State of Amber going into 2018
There have been tons of bug fixes and new features added to Amber since our last update. Six releases and 125 new commits. (Full release notes linked at the bottom of this article).
Many of these features will be highlighted in blog posts in the coming weeks.
With the start of the new year, the core team would like to communicate the vision & goals for the framework and introduce the team working to maintain it.
The vision is for the framework to be a convergence of best practices - both from the community and existing frameworks & libraries.
We invite the developer community as a whole to help us in identifying and implementing these best practices. Please chat with us on discord, open issues, open Pull Requests. The team maintains openness to suggestions and contributions, it is part of the team’s philosophy.
The vision will help meet some of the main goals of the project:
- Create an approachable framework
- Maintain developer happiness
- Take advantage of the speed, type safety, and compile time checks that Crystal provides
- Long Term - evolving with Crystal and web development as a whole
Convergence of Best Practices
You will see influence from the best parts of successful frameworks built into Amber. Here are a few examples:
Powerful CLI with Code Generators (Rails)
This leads to developer happiness and productivity. In addition, as new best practices are adopted, they will be baked in to the code generators - making it easy for you to adopt and implement. Read more about the CLI in the guides
These allow you to easily create, modify, remove, and reorder middleware for your application. See more about pipelines in the guides.
Support for multiple ORM patterns (ActiveRecord and Repo patterns)
These are inspired from ActiveRecord in Ruby and Ecto in Elixir. There is support for both Granite ORM and Crecto out-of-the-box in Amber.
- Elias Perez (eliasjpr)
- Isaac Sloan (elorest)
- Dru Jensen (drujensen)
- Faustino Aguilar (faustinoaq)
- Nick Franken (fridgerator)
- Mark Siemers (marksiemers)
You can see the details of each release in the notes below:
- v0.3.5 Release notes
- v0.3.6 Release notes
- v0.3.7 Release notes
- v0.5.0 Release notes
- v0.6.0 Release notes
- v0.6.1 Release notes