The official website for Culture DAO.
- nvm
- NodeJS
- docker (optional)
- docker-compose (optional)
First, ensure your using the currect version of NodeJS:
nvm use
Next, run the development server:
yarn dev
We use a variety of tools and techniques to ensure code quality while developing the app, some of these include linting, husky git hooks, automated testing, CI/CD pipelines, etc...
Linting is the process of running a program that will analyse code for potential errors, for our purposes we are using ESLint and extend the next/core-web-vitals
preset.
Execute the linter by running the following command:
yarn lint
todo
todo
todo
Convetional Commits are a specification for adding human and machine readable meaning to commit messages.
The first line of a commit message should always consist of the following strings:
<type>(scope): <description>
The scope
is optional, but preferred. A correct commit message would be:
feat(website): created new notification banner
The available types are:
build: Changes that affect the build system or external dependencies
chore: Updating a script, task, location of a file, or something that's a nuisance
ci: Changes to our CI configuration files and scripts
docs: Documentation only changes
feat: A new feature
fix: A bug fix
perf: A code change that improves performance
refactor: A code change that neither fixes a bug nor adds a feature
style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
test: Adding missing tests or correcting existing tests
The available scopes are:
client
server
gha
config
build
workspace
These can be configured in the commitlint.config.js
file in the root of the workspace.