First and foremost, the toolset must be independent of the code that is written. We simply cannot have a compiler that will only work for JQuery, or a testing harness that will only work if the test artifacts are composited via Rake.
When possible, we’re going to take advantage of the latest and greatest: CSS compilers, for instance.
Why choose maven?
What workflow steps are needed?
Since maven defines a specific artifact lifecycle, we should start there and decide what we need our plugin to do. After starting to write this for a little bit however I realized that trying to declare it all up front is a significant undertaking, and should be split up by broader concepts:
- Unit Testing
- Functional Testing
- Packaging and Publishing
- Dependency Resolution
- Debug Runtime
- Headless Runtime
Should we create an Archetype?
The short answer: Yes. The long answer: Archetypes are absolutely critical to drive adoption, examples and acceptance, and are a very useful speed-of-workflow tool. Given the many different potential framework projects out there however, we’re going to have to create many of these; One for JQuery, one for Mootools, one for Backbone… you get the idea. So how about we worry about that once we get more pieces of the compiler in place.
Where will the source live?
I’m glad you asked! I’ll be hosting the project on GitHub. Please feel free to contribute!
Where will the maven repository be?
This is as yet undecided. For now I recommend you clone the project and install it locally. Once there’s enough functionality on the project to warrant a full point release, we’ll revisit this.