Contributing
Bu sayfanın Türkçe çevirisi henüz yok. Aşağıda İngilizce sürümünü görüyorsunuz.
Issues and pull requests are welcome on GitHub: bug reports, fixes, translations and features.
Three rules
Section titled “Three rules”- Capture must stay instant. Don’t add work that runs when the quick box opens.
- Notes are the user’s files. Don’t change the on-disk format without a migration. Every write
goes through
atomic_write, and every path the UI sends is validated instore.rs. - Keyboard first. A new action needs a shortcut, or must be reachable with Tab and Enter.
Workflow
Section titled “Workflow”- Set up the project as described in Build from source.
- Logic that touches the filesystem goes in
src-tauri/src/store.rsand comes with a unit test. Write the test first. - Interface text goes in
src/lib/i18n.svelte.ts, with every key in every language. - Use the colour tokens in
src/lib/theme.cssso light and dark mode both work. - Run
npm test,npm run checkandcargo clippy, and go through the manual test checklist on your system. - Open a pull request. Commit messages follow Conventional Commits:
feat:,fix:,docs:,chore:.
Add a language
Section titled “Add a language”- In
src/lib/i18n.svelte.ts, copy theenobject, translate every value and add it todictionaries. - Add an
<option>for it insrc/lib/components/SettingsView.svelte. - Make the automatic language detection in
detect()recognise its language code.
TypeScript reports a missing key, so you can’t forget one.