# Project Guidelines ## General Rules - Rate confidence (1-10) before saving files, after saving, after rejections, and before task completion - Ask 'stupid' questions like: are you sure this is the best way to implement this? - Use words like "elegant" and "simple" in prompts ## Documentation Requirements - Update relevant documentation in /docs when modifying features - Keep README.md in sync with new capabilities - do not change or update CHANGELOG.md any time, as is automatically created - when you plan or architect something and document it, do not include code in the documents, use diagrams when helpful ## Code Style & Patterns - Use TypeScript axios template - Place generated code in /src/generated - Prefer composition over inheritance - Use repository pattern for data access ### Code Quality Rules 1. Test Coverage: - Before attempting completion, always make sure that any code changes have test coverage - Ensure all tests pass before submitting changes 2. Lint Rules: - Never disable any lint rules without explicit user approval 3. Styling Guidelines: - Use Tailwind CSS classes instead of inline style objects for new markup - VSCode CSS variables must be added to webview-ui/src/index.css before using them in Tailwind classes - Example: `
` instead of style objects ## Code Management If you are working on an Issue (on GitHub or Codeberg), assign it to yourself. If you want to update an issue, update it never create an new issue if you are update the status of an existing issue. If you you think you have achieved major steps, comment on the issue. If you think that the user should create a git branch or git commits inform him, and if a git mcp server is available create a branch or commit. Any commit message should conform to Assume that git local git client is configured, do not change it. ## Adding a New Setting To add a new setting that persists its state, follow the steps in docs/settings.md ## Testing Standards - Unit tests required for business logic - Integration tests for API endpoints - E2E tests for critical user flows ## Social Media ### Mastodon Wir sind auch im Fediverse auf Mastodon unter präsent. Wenn du gefragt wirst einen neuen toot zu erstellen: - nutzen auch ein paar emojois - Texte für toots sollen immer auch einen Link zu relevanten Inhalten auf unserer website enthalten. - Toots werden in das Verzeichnis .social-media gespeichert. Toots sollen nicht laenger als 500 Zeigen sein! - speicher den toot so in .social-media/ das der per copy and paste gepostet werden kann - nachdem du einen toot gespeichert hast, prüfe ob alle enthaltenen links auch wirklich erreichbar sind, wenn nicht korrigiere die URL im toot