rss-reader/CLAUDE.md

23 lines
957 B
Markdown
Raw Permalink Normal View History

# RSS Reader Project Guidelines
## Build & Run Commands
- Run demo mode: `just run-local-demo`
- Run with database: `just run-local-persistant-db`
- Run with Nix: `just run-local-nix`
- Migrations: `just sqlx-prepare`
- Production: `cargo run -- -d database.sqlite -p port`
## Style Guidelines
- **Imports**: Group by source (std lib, external crates, internal modules)
- **Naming**: snake_case for variables/functions, CamelCase for types
- **Documentation**: Use `///` doc comments for public items
- **Error Handling**: Use Result types with detailed error messages
- **Types**: Leverage Rust's type system fully, minimize `unwrap()`
- **Formatting**: Follow standard Rust formatting with 4-space indentation
## Project Architecture
- Web framework: Rocket with SQLite database
- Templates: Tera templates
- Authentication: Argon2/bcrypt password hashing
- Frontend: HTML/CSS with Vite for asset bundling
- Feed handling: RSS/Atom parsing with feed-rs