-
-
Notifications
You must be signed in to change notification settings - Fork 587
docs: update development instructions #1825
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
pedrolamas
merged 7 commits into
fluidd-core:develop
from
pedrolamas:pedrolamas/contributing-update
May 1, 2026
Merged
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
b1a7053
docs: update development instructions
pedrolamas 6947a0d
docs: address PR review feedback
pedrolamas 0c403b5
docs: clarify HTTP usage in architecture overview
pedrolamas 1edaf77
Merge branch 'develop' into pedrolamas/contributing-update
pedrolamas be7bcb6
docs: complete Vuex module layout details
pedrolamas f1a3b4b
Merge branch 'develop' into pedrolamas/contributing-update
pedrolamas 0c5955d
docs: update
pedrolamas File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,22 +1,75 @@ | ||
| # Contributing to Fluidd | ||
|
|
||
| Fluidd exists as an independent client of Moonraker, and by extension - Klipper. | ||
| Fluidd is built on VueJS, using TypeScript. | ||
| Fluidd is an independent web client for [Klipper](https://github.com/Klipper3d/klipper) | ||
| (via [Moonraker](https://github.com/Arksine/moonraker)), built with Vue 2.7 and TypeScript. | ||
|
|
||
| - Source should always pass the linting rules defined, with no warnings or type errors. | ||
| - A clean develop is preferred. This means squashing, and rebasing your feature branches prior to merge. | ||
| - PR's should off a branch other than develop or master. | ||
| - Commit messages should follow the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) standard, and should have a Signed-off-by line, for example; | ||
| Contributions of all kinds are welcome — bug reports, feature requests, code, and | ||
| translations. This document covers the process and rules. For setup instructions and a | ||
| tour of the codebase, see the | ||
| [Development guide](https://docs.fluidd.xyz/development/). | ||
|
|
||
| ```sh | ||
| feat: My feature. | ||
| ## Before you start | ||
|
|
||
| Some description. | ||
| - Read the [Development guide](https://docs.fluidd.xyz/development/) — it covers the | ||
| Dev Container, running Fluidd locally, and a quick architecture overview. | ||
| - After cloning, run `npm ci && npm run bootstrap` to install dependencies and set up | ||
| the Git hooks that pre-validate your commits. | ||
|
|
||
| Signed-off-by: Your Name <your email address> | ||
| ## Branching and pull requests | ||
|
|
||
| - Create your work on a feature branch from `develop` — for example, | ||
| `feat/my-feature` branched from `develop`. Do not open pull requests from | ||
| `develop` or `master` directly. | ||
| - **Pull request titles must follow [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/)**. | ||
| This is enforced by CI. | ||
| - Accepted pull requests are squashed and rebased onto `develop` when merged. | ||
|
|
||
| ## Commits | ||
|
|
||
| - Use [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) for every | ||
| commit message. Allowed types: `feat`, `fix`, `docs`, `style`, `refactor`, `perf`, | ||
| `test`, `build`, `ci`, `chore`, `revert`, `types`, `i18n`. | ||
| - The commit subject must be **50 characters or fewer** — enforced by the | ||
| `commit-msg` Git hook. | ||
| - Every commit must include a `Signed-off-by` line. The easiest way is to commit with | ||
| `git commit -s`. Signing off acknowledges the | ||
| [Developer Certificate of Origin](./developer-certificate-of-origin) and must | ||
| contain your real name and a current email address. Example: | ||
|
|
||
| ```text | ||
| feat: my feature | ||
|
|
||
| Some description of what changed and why. | ||
|
|
||
| Signed-off-by: Your Name <your@email> | ||
| ``` | ||
|
|
||
| - By signing off on commits, you acknowledge that you agree to the [developer certificate of origin](/developer-certificate-of-origin). | ||
| This must contain your real name and a current email address. | ||
| ## Code quality | ||
|
|
||
| Source must pass linting and type-checking with **zero warnings and zero type errors**. | ||
| Before pushing, run: | ||
|
|
||
| ```bash | ||
| npm run lint | ||
| npm run type-check | ||
| npm run test | ||
| ``` | ||
|
|
||
| CI runs the same checks (plus `npm run circular-check` and a production build) on | ||
| every pull request. | ||
|
|
||
| ## Translations | ||
|
|
||
| Translations are managed via [Weblate](https://hosted.weblate.org/engage/fluidd/) — do | ||
| not edit non-English files in `src/locales/` directly. New strings should be added to | ||
| `src/locales/en.yaml`; Weblate handles the rest. See the | ||
| [Localization section](https://docs.fluidd.xyz/development/#localization) of the | ||
| Development guide for more. | ||
|
|
||
| ## A note on `CLAUDE.md` | ||
|
|
||
| After cloning the repo and running `npm install`, we recommend running `npm run bootstrap` to install a couple of git hooks that will pre-validate all new commits. | ||
| The `CLAUDE.md` file in the repository root is an exhaustive reference written for AI | ||
| coding assistants (Claude Code, Cursor, and similar tools). It documents architecture, | ||
| patterns, and gotchas in detail. Humans are welcome to read it as a deeper second | ||
| source, but the canonical onboarding doc for human contributors is the | ||
| [Development guide](https://docs.fluidd.xyz/development/). | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.