/ceevee-ui

The UI for the Ceevee app.

Primary LanguageJavaScript

ceevee-ui

Build Status Maintainability Test Coverage

This README outlines the details of collaborating on this Ember application. A short introduction of this app could easily go here.

Prerequisites

You will need the following things properly installed on your computer.

Installation

  • git clone <repository-url> this repository
  • cd ceevee-ui
  • npm install

Running / Development

Code Generators

Make use of the many generators for code, try ember help generate for more details. To generate a model and associated unit tests, run this command, where model-name is replace with the name of the model:

  • ember g model model-name

Running Tests

  • npm test or
  • ember test --server

Linting

  • npm run lint:js
  • npm run lint:js -- --fix

Building

  • ember build (development)
  • ember build --environment production (production)

Deploying

Specify what it takes to deploy your app.

Releasing

Releases are automated with semantic-release. Releases are made from master branch automatically and published to GitHub and NPM. To initiate a release, create a branch release off develop, then create a PR of release into master. Once merged to master, a release is made and tagged.

Contributing

Contributions consistent with the style and quality of existing code are welcomed. Be sure to follow the guidelines below.

Check the issues page of this repository for available work.

Committing

This project follows a successful git branching model and uses commitizen and cz-conventional-changelog. Commitizen helps to ensure that commit messages remain well-formatted and consistent across different contributors.

Before committing for the first time, install commitizen:

npm install -g commitizen

Watch a helpful video about commitizen, but follow the directions here for actual usage within this project.

To start work on a new change, pull the latest develop and create a new topic branch (e.g. feature-resume-model, chore-test-update, bugfix-bad-bug). Work should be committed to topic branches only, never directly to mainline branches. To begin a commit, stage changes as usual:

git add .

To commit, run the following command (instead of git commit) and follow the directions:

npm run commit

When committing in this manner, tests are executed automatically and all tests must pass before the commit can be finalized. If tests fail, please address the issue(s) and try the commit procedure again.

We recommend making incremental commits at logical stopping points whenever possible, rather than large monolithic commits at the end of a feature.

Pull Requests

When a topic branch is ready to merge, submit a pull request from the topic branch into develop via GitHub. Pull requests are automatically tested in CI and may only be merged after all checks pass successfully. At that time, a core team member may merge the PR into develop.

Issue References

Commit messages and pull requests should short link to GitHub issues when referencing information in the issue; though not every commit or PR related to an issue needs to reference it. Commits and PRs that fix or resolve an issue should close the issue in the message.