This is not the bible, but sticking to this will ensure that you don't waste your time and talent.
If you're unfamiliar with the GitHub flow, this is a good, 5 minute long introduction. We're using the Fork & Pull model.
Issues marked as feature are the base of our flow. These mark single bits of work (tasks, features) that can be done in parallel.
An overview of these can be found in Development Tasks.
Features further down the line can be found on the Brainstorming board.
If someone wants to work on a feature, they should comment "Claim" to be assigned to the issue by a maintainer.
Pull requests (PR) should be created as soon as possible. It's a good idea to set them to draft mode since they'll be around for some time. Undo this once others should review and accept the PR.
ℹ️ Forks | Creating a PR from a fork
While the issue is the place to discuss the feature, the PR is the place to discuss the code (usually between assignees).
We use TypeScript, React and Bootstrap
To aid our eyes, we use Prettier with the following .prettierrc
configuration:
{
"useTabs": true
}
Use eslint to highlight code problems.
In the future, Prettier and eslint will be checked against before merging.
To be able to build the project, you need to install nodejs. Preferabily, you should use the latest LTS version, but you can also try the latest version if you want to.
Now, install the projects' dependencies by opening an command line, changing to your local checkout of the projects' directory and running npm install
.
Afterwards, you can run the project with npm start
and browsing to http://localhost:3000/. During development, your changes will directly be applied, so you only need to refresh the loaded page in your browser to get the latest updates.
A Dockerfile is made available for CI/CD purposes, but does not impact day-to-day development of this project. docker build -t vmmx . && docker run --rm -p 8000:80 vmmx
Feel free to introduce yourself in issue #15!