- Bugs? create an issue
We currently need to update and fix a lot of our tests; this would be a great place to scrub in.
Send in a PR to the stage branch with a clear list of feature changes. Smaller PRs are more likely to be accepted.
- We use npm
- At some point we'll use prettier and eslint
We use the presentation and container pattern on the frontend, and currently have things split up by feature slices.
For any major feature, you can expect to create:
<feature>
- <feature>.jsx # The presentation component
- index.jsx # The container component
# Optional depending on the feature:
- <feature>Requests.js # network requests
- <feature>Slice.js # redux state management
For minor utility components we don't always break things up.
Current styles are a smorgashboard of USWDS and a bit of our own - this needs a lot of cleaning up.
On the backend the main thread to follow if you make any database changes are:
- src/models # These are where the interface to the db is
- src/services # The services will call on the models for any necessary business logic
- src/dto # These are the shape of the objects the service will usually return to the handlers
- src/handlers # The handlers are pretty "dumb" and just handle the request and response
- src/routes
Migration files should be write only. We need to add in version tracking, but these run sequentially.