What is ember-source?
The ember-source package is the core framework for Ember.js, a JavaScript framework for building ambitious web applications. It provides a robust set of tools and conventions for building scalable and maintainable web applications.
What are ember-source's main functionalities?
Routing
Ember's routing system allows you to map URLs to routes, which are responsible for loading the data and rendering the templates. This example demonstrates how to define a route that fetches all 'post' records from the store.
import Route from '@ember/routing/route';
export default class MyRoute extends Route {
model() {
return this.store.findAll('post');
}
}
Components
Components in Ember are reusable UI elements that can have their own state and logic. This example shows a simple component that computes a full name from first and last name arguments.
import Component from '@glimmer/component';
export default class MyComponent extends Component {
get fullName() {
return `${this.args.firstName} ${this.args.lastName}`;
}
}
Services
Services in Ember are singleton objects that can be used to share state and behavior across different parts of the application. This example demonstrates a simple authentication service.
import Service from '@ember/service';
export default class MyService extends Service {
isLoggedIn = false;
login() {
this.isLoggedIn = true;
}
logout() {
this.isLoggedIn = false;
}
}
Other packages similar to ember-source
react
React is a JavaScript library for building user interfaces. Unlike Ember, React is more flexible and allows developers to choose their own libraries for routing, state management, and other functionalities. React focuses on the component-based architecture and provides a virtual DOM for efficient updates.
vue
Vue.js is a progressive JavaScript framework for building user interfaces. It is similar to Ember in that it provides a comprehensive solution for building web applications, including routing and state management. However, Vue is more flexible and easier to integrate into existing projects.
angular
Angular is a platform and framework for building single-page client applications using HTML and TypeScript. It provides a complete solution with built-in tools for routing, state management, and form handling. Angular is more opinionated and structured compared to Ember.
Ember.js is a JavaScript framework that greatly reduces the time, effort and resources needed to build any web application. It is focused on making you, the developer, as productive as possible by doing all the common, repetitive, yet essential, tasks involved in most web development projects.
With Ember, you get all of these things:
- A Welcoming Community - Get the help you need, when you need it.
- An Enduring Foundation for your Apps - There are apps that used the first version of Ember almost a decade ago, and successfully still use Ember today.
- Reliability & Security - With regular LTS Releases and 30 weeks of security fixes, you can rely on Ember.js to care about the stability and security of your app.
- Modern JavaScript - Use modern JavaScript features that you're already familiar with like classes, decorators and generators.
- Documentation - Rely on top-notch documentation for each Ember version and a team that is focused on the documentation and learning experience.
- HTML-first Components - Start with valid, semantic HTML in your components, and layer in the functionality that you need, as you need it.
- Routing - Ember routes respect URLs while layering in extra functionality like rendering templates, loading data models, handling actions, and conditionally redirecting.
- Data Layer - Ember Data is a powerful data management tool that comes with Ember apps by default. Want to use something else? We support that, too!
- Flexibility Use any backend stack with your Ember apps, thanks to the flexibility of adapters and serializers.
- Autotracking - Ember's reactivity model makes it easier to decide what to automatically update, and when.
- Zero Config Apps - With strong defaults, you may never need to configure anything in your app, but the options are there if you need it!
- Quality Addon Ecosystem - high-quality, rated addons with the ability to search by source code. Many require no additional configuration, making it easier than ever to supercharge your apps.
Find out more:
Contributions
See CONTRIBUTING.md
Cross-browser testing provided by Browserstack.