RC1.0 Roadmap & Milestone Suggestions
Clone this wiki locally
The problem that we're running into as developers is that the interfaces to operate in mean.io are clumsy or even infrequently work against the entire proposed programming paradigm of high level feature and application packaging and encapsulation. So, we need to come up with some recommended best practices, abstract what we can to the
meanio node module, and keep the rest in the core and custom packages. I don't have a good list for this yet, but I will sometime tomorrow and add it to this post, but for now some other general design and best practices suggestions are:
What needs to be done generically to all of the packages in
packages/core/ is that they need to strongly support and enforce, or themselves depend on a strongly enforced, Dependency Injection related api implementation in
meanio. In order to do that, we have to consider the nodejs, angularjs, sql/nosql, and expressjs best practices and semantics to abstract things like emitters/listeners and services to share the entire package as a feature all together.
An API mechanism could be written to easily allow the creation of node emitters and listeners and aggregate them as well as angular services in the same fashion. It was recently mentioned that configurations are lacking in packages: they need to have environment support. Testing for this purpose should be examined and hopefully without much effort we cancome up with a plan to build our mean.io testing implementations to test things more like a package and application from the user perspective. Waterline or something like it needs to be plugged in instead of simply mongoose, but that's not a necessity for RC1. Overall, a package based dependency injection programming model and style guidelines are required, and I will address as much of this as possible in a code review. I'm not sure if everyone can contribute to this exactly, so we will change permissions to allow as much discussion as we can. Please everyone provide your own suggestions, do your own code reviews and write your findings here!