CARVIEW |
Navigation Menu
-
Notifications
You must be signed in to change notification settings - Fork 369
Engineering Practices
This page describes the engineering practices for TopCoat. This is an evolving document started with a very minimalistic set of practices - we'll add more as the project gets more complex and new needs arise.
- Performance first
- Framework agnostic
- Content Focused
- Customizable
- Toolable
- Content is king. Our UI is not content.
- We want to be good OS Citizens while still retaining our identity.
- Our UI Framework should accelerate design, not restrict it.
- We should be able to convey human, without literally showing our heart.
- We want to be clean and simple without sacrificing being clear.
- TopCoat’s form not only follows function, it communicates it in an honest way.
- We love our craft and it should be apparent in the quality of our UI.
Frequent releases are the best way to show steady progress. TopCoat is a release-driven project, not a feature-driven one (meaning we don't stop a release because feature X does not make it; it will most likely make it in the next release). We plan to have a point release every month.
Feature development is done in feature branches, and merged to the mainline when ready (meaning tested). Merges are done using pull requests. Each change need to be reviewed by at least one other peer. The code review process is done using github's pull request mechanism.
We're using this board on huboard to organize the github issues into a backlog. The rules are very simple:
- We use the "Backlog" panel to prioritize issues (the panel that slides from the left when you click on the blue arrow)
- Pick items as close to the top as possible, assign yourself to them and move them into "Working" (this is the equivalent of putting the Working label)
- Try to have as few items in Working as possible (ideally one)
We're also using milestones to group github issues into larger pieces of functionality, called epics. The prioritized list of epics form the Roadmap.
Anyone is welcome to contribute, assuming he or she signs the CLA available online at https://topcoat.io/dev/topcoat-cla.html.
Make sure you read our coding conventions and pull request checklist.
Join the TopCoat developer group on Google Groups.
https://github.com/topcoat/topcoat/wiki/Coding-Guidelines
- Code follows coding guidelines
- Performance test files have been added (see https://github.com/topcoat/topcoat/blob/master/test/perf/telemetry/README.md)
- TBD...