All Projects → glimmerjs → Glimmer Vm

glimmerjs / Glimmer Vm

Licence: mit

Programming Languages

typescript
32286 projects

Labels

Projects that are alternatives of or similar to Glimmer Vm

Ember Cli Typescript
Use TypeScript in your Ember.js apps!
Stars: ✭ 346 (-67.39%)
Mutual labels:  emberjs
Procourse Memberships
Allow users to purchase access to a user group on Discourse.
Stars: ✭ 16 (-98.49%)
Mutual labels:  emberjs
Ember Accessibility
An EmberJS addon to help identify accessibility violations during development
Stars: ✭ 29 (-97.27%)
Mutual labels:  emberjs
Jsonapidotnetcore
JSON:API Framework for ASP.NET Core
Stars: ✭ 465 (-56.17%)
Mutual labels:  emberjs
Rfcs
RFCs for changes to Ember
Stars: ✭ 731 (-31.1%)
Mutual labels:  emberjs
Ember Data Table
Data tables for Ember following Google Design specs
Stars: ✭ 19 (-98.21%)
Mutual labels:  emberjs
Ember Sortable
Sortable UI primitives for Ember.js
Stars: ✭ 277 (-73.89%)
Mutual labels:  emberjs
Docfy
Build fully personalized documentation sites; write content and demos in Markdown.
Stars: ✭ 48 (-95.48%)
Mutual labels:  emberjs
Ember Flexberry Data
OData v4 for EmberJS, JS Query Language, Offline, Data projections
Stars: ✭ 6 (-99.43%)
Mutual labels:  emberjs
Aws Mobilehub Ember
Serverless example mobile web application for building a Serverless EmberJS based web application using AWS JavaScript SDK, and MobileHub.
Stars: ✭ 15 (-98.59%)
Mutual labels:  emberjs
Strider
Open Source Continuous Integration & Deployment Server
Stars: ✭ 4,536 (+327.52%)
Mutual labels:  emberjs
Accent
The first developer-oriented translation tool. True asynchronous flow between translators and your team.
Stars: ✭ 721 (-32.05%)
Mutual labels:  emberjs
Pretzel
Javascript full-stack framework for Big Data visualisation and analysis
Stars: ✭ 26 (-97.55%)
Mutual labels:  emberjs
Ember Runloop Handbook
A deep dive into the Ember JS runloop.
Stars: ✭ 367 (-65.41%)
Mutual labels:  emberjs
Mber
Fast and minimal Ember.js CLI alternative, without broccoli.
Stars: ✭ 30 (-97.17%)
Mutual labels:  emberjs
Ember Redux
Predictable state management for ember apps
Stars: ✭ 281 (-73.52%)
Mutual labels:  emberjs
Ember Real Estate Website
A real estate website built using Ember.js and Cosmic JS
Stars: ✭ 18 (-98.3%)
Mutual labels:  emberjs
Ember Octane Vs Classic Cheat Sheet
A cheat sheet for converting classic Ember app to Octane
Stars: ✭ 48 (-95.48%)
Mutual labels:  emberjs
Passwordcockpit
Passwordcockpit is a simple, free, open source, self hosted, web based password manager for teams. It is made in PHP, Javascript, MySQL and it run on a docker service. It allows users with any kind of device to safely store, share and retrieve passwords, certificates, files and much more.
Stars: ✭ 34 (-96.8%)
Mutual labels:  emberjs
Ember Inspector
Adds an Ember tab to the browser's Developer Tools that allows you to inspect Ember objects in your application.
Stars: ✭ 936 (-11.78%)
Mutual labels:  emberjs

Status Build Status BrowserStack Status

Glimmer is a flexible, low-level rendering pipeline for building a "live" DOM from Handlebars templates that can subsequently be updated cheaply when data changes.

It is written in TypeScript.

The project is still going through rapid changes at the moment. For the time being, please refer the architecture overview for more information.

Building Glimmer

  1. Ensure that Node.js is installed.
  2. Run npm install or yarn install to ensure the required dependencies are installed.
  3. Run npm run build to build each Glimmer package. The builds will be placed in the dist/ directory.

Glimmer's packages are only built when running npm run build (or ember build --env production). If you run ember build without setting the production environment, dist/ will only contain test assets.

If you want to use the built packages in other projects, you can use npm run yarn:link to execute the yarn link command inside each built package. (You must build the packages first with npm run build).

How to Run Tests

Via Ember CLI

  1. Run: ember test --server

Ember CLI is a CI tool, so it will run tests as you change files.

On the console with PhantomJS

  1. Run npm test.

In a browser

  1. Run npm start.
  2. Visit http://localhost:7357/tests/.

TypeScript Notes

"Friend" Properties and Methods

In TypeScript, private and protected refer to the class itself (and its subclasses).

Sometimes, you want to add a property or method that shouldn't be considered part of the external API (for other packages or Ember) but is expected to be used as part of an internal protocol.

In that case, it's ok to mark the property as private or protected and use ['property'] syntax to access the property inside of the same package.

class Layout {
  private template: Template;
}

function compile(layout: Layout, environment: Environment): CompiledBlock {
  return layout['template'].compile(environment);
}

The idea is that the compile function might as well be a private method on the class, but because the function leaks into untyped code, we want to be more careful and avoid exporting it.

Other use-cases might include protocols where a cluster of classes is intended to work together internally, but it's difficult to describe as a single class hierarchy.

This is a semi-blessed workflow according to the TypeScript team, and Visual Studio Code (and tsc) correctly type check uses of indexed properties, and provide autocompletion, etc.

You should not treat use of ['foo'] syntax as license to access private properties outside of the package.


Cross-browser testing provided by:

BrowserStack

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].