A collection of functional-style computed property macros for Ember.js to keep your app code DRY.
Ember Macaroni is an Ember.js addon that provides a collection of computed property macros to help developers avoid repetitive code. It offers functional-style utilities for manipulating collections, performing comparisons, and handling conditional logic within Ember objects and components.
Ember.js developers building applications who want to reduce boilerplate and write more declarative, maintainable code using computed properties.
It extends Ember's built-in computed macros with additional functional utilities, making it easier to perform common data operations without writing custom computed properties each time.
Keep your app code DRY and copypasta free with computed property macaronis (macros)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides specific macros like findFromCollectionByKey and filterFromCollectionByContains, simplifying common array operations without manual iteration or custom logic.
Reduces repetition by offering reusable computed property macros for tasks such as truth checks and string joining, as demonstrated in the extensive examples.
Allows importing individual macros or the entire library via destructuring, making it flexible and straightforward to add to existing Ember objects or components.
Complements Ember's built-in computed macros with functional-style utilities, positioning itself as a lodash-like library for computed properties.
The README explicitly states 'Chaining is not supported... yet,' limiting declarative composition of multiple transformations, which can be a drawback for complex data flows.
Focuses on computed properties, which are less emphasized in modern Ember Octane with tracked properties, potentially making it less relevant for new or evolving projects.
Introduces an extra library for functionality that might be achievable with native Ember features or other addons, adding maintenance and bundle size considerations.