| Folder | Description |
|---|---|
| packages | packages for shared code libraries |
| apps | packages for web applications |
| toolchain | packages supporting the shared toolchain (eslint, vitest, typescript) |
| Folder | Description |
|---|---|
| Node.js | check node version in engines section of package.json for latest minimum version |
| PNPM | Fast, disk space efficient package manager (PNpm) (best to install via corepack) # corepack enable pnpm |
Install the dependencies for all workspaces in the monorepo
pnpm installRemove all generated build artifacts for all workspaces in the monorepo
pnpm run -w cleanProduce final generated artifacts for deployment for all relevant workspaces in the monorepo
Note
Not all workspaces in the monorepo have or need buildtasks
pnpm run -w buildRun unit tests for all workspaces in the monorepo
pnpm run -w testRun unit tests for all workspaces in the monorepo
pnpm run -w lintRun TypeScript type checks for all workspaces in the monorepo
pnpm run -w typecheckdocker build . -t sveltekit-example-app --build-arg="APP_NAME=sveltekit-example-app"docker run --rm --name=sveltekit-example-app -p 8080:3000 sveltekit-example-appCommit messages must adhere to Conventional Commits best practices. The format proposed by this convention leads to easier to read commit history.
Each commit message consists of a header, a body, and a footer.
<type>(<optional scope>): <subject> empty separator line <optional body> empty separator line <optional footer>
| feat | Features | A new feature |
| fix | Bug Fixes | A bug fix |
| docs | Documentation | Documentation only changes |
| style | Styles | Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc) |
| refactor | Code refactoring | A code change that neither fixes a bug nor adds a feature |
| perf | Performance Improvements | A code change that improves performance |
| test | Tests | Adding missing tests or correcting existing tests |
| build | Builds | Changes that affect the build system or external dependencies (example scopes: turborepo, pnpm) |
| ci | Continuous Integrations | Changes to our CI configuration files and scripts (example scopes: gh-actions) |
| chore | Chores | Other changes that don't modify source or test files |
| revert | Reverts | Reverts a previous commit |
|
The scope provides additional contextual information.
- Is an optional part of the format
- Allowed Scopes depends on the specific project
- Don't use issue identifiers as scopes
The subject contains a succinct description of the change.
- Is a mandatory part of the format
- Use the imperative, present tense: "change" not "changed" nor "changes"
- Do not capitalize the first letter
- No dot (.) at the end
The body should include the motivation for the change and contrast this with previous behavior.
- Is an optional part of the format
- Use the imperative, present tense: "change" not "changed" nor "changes"
- This is the place to mention issue identifiers and their relations
The footer should contain any information about Breaking Changes and is also the place to reference Issues
that this commit refers to.
- Is an optional part of the format
- optionally reference an issue by its id.
- Breaking Changes should start with the word
BREAKING CHANGES:followed by space or two newlines. The rest of the commit message is then used for this.
-
feat(shopping cart): add the amazing button -
feat: remove ticket list endpoint refers to JIRA-1337 BREAKING CHANGES: ticket endpoints no longer supports list all entities. -
fix: add missing parameter to service call The error occurred because of <reasons>. -
build(release): bump version to 1.0.0 -
build: update dependencies -
refactor: implement calculation method as recursion -
style: remove empty line