1.6 KiB
1.6 KiB
Gemini Global Configuration (GEMINI.md)
This document provides a set of global instructions and principles for the Gemini CLI to follow during our interactions.
Reference:
- Project Architecture: ALWAYS refer to this document for the technical layout and data flows of the system.
Environment Management
- Startup Rule: ALWAYS start the application using
bash fitmop.sh. NEVER try to start individual services (uvicorn, npm) manually. - Shutdown: Use
Ctrl+Cto stop the services when running viafitmop.sh.
Code Quality & Standards
1. Linting & Formatting
ALWAYS run linters and formatters before completing a task:
- Backend (Ruff):
uv run ruff check . --fix - Frontend (ESLint/Prettier):
npm run lintandnpm run format(in/frontend) - Action: Fix ALL errors and warnings before proceeding to verification.
2. Testing
ALWAYS run the full test suite to ensure no regressions:
- Backend:
uv run pytest(in/backend) - Frontend:
npm run test(in/frontend) - Action: Every new feature or major refactor MUST include or update relevant tests.
3. Error Handling & Logging
- No Print Statements: Use
loggingin Python andconsole.error(with prefix) in Vue. - Fail Fast: Let exceptions bubble up to the global handler in
backend/src/main.py. - Validation: Use Pydantic models for all API requests and responses.
4. Documentation
- Refer to
CONTRIBUTING.mdfor detailed guidelines. - Keep
task.mdandimplementation_plan.mdupdated throughout the task.