1.3 KiB
1.3 KiB
Fedora Metalink Proxy Codebase Guide
Build/Lint/Test Commands
- Build:
docker-compose up --build- Builds and runs the Docker container - Run:
docker-compose up- Starts the application - Test:
python -m unittest discover- Runs all tests (no test files found) - Lint:
pylint app.py- Lints the main application file
Code Style Guidelines
- Imports: Grouped by standard library, third-party, local imports
- Formatting: 4-space indentation, spaces around operators
- Types: Use type hints for function signatures
- Naming: snake_case for variables/functions, CamelCase for classes
- Error Handling: Use try/except blocks for network operations
- Environment: Use
python-dotenvfor configuration - Logging: Use
print()for debugging (consider structured logging) - Security: Validate all user inputs and environment variables
Project Structure
app.py: Main Flask applicationtemplates/: HTML templates for web interfacedata/: Persistent data directory (mounted in Docker)Dockerfile: Container configurationdocker-compose.yml: Orchestration setup
Key Components
- Flask web framework with Gunicorn for production
- BeautifulSoup for XML parsing
- Requests for HTTP operations
- Pandas/matplotlib for statistics visualization