Files
go-eve-pi/.cursor/rules/go-eve-pi-project.mdc

27 lines
1.1 KiB
Plaintext

---
alwaysApply: true
description: Go EVE PI project structure and conventions
---
# Go EVE PI Project Structure
This is a Go project for EVE Online PI (Planetary Interaction) management with SSO authentication.
## Key Files
- [main.go](mdc:main.go) - Main entry point, loads configuration from .env file
- [esi_sso.go](mdc:esi_sso.go) - EVE SSO authentication implementation
- [db.go](mdc:db.go) - Database abstraction layer with high-level methods
## Project Conventions
- Uses `logger "git.site.quack-lab.dev/dave/cylogger"` for all logging
- Database operations use high-level methods like `GetTokenForCharacter()` and `SaveTokenForCharacter()`
- SSO interface: `GetToken(ctx, characterName)` returns access token for character
- Configuration loaded from .env file (ESI_CLIENT_ID, ESI_REDIRECT_URI, ESI_SCOPES, DB_PATH)
## Logging Standards
- Use `logger.Info()` for important business events
- Use `logger.Debug()` for detailed debugging information
- Use `logger.Warning()` for warning conditions
- Use `logger.Error()` for error conditions
- Never use `fmt.Printf` - always use the logger
- Avoid redundant log lines right next to each other