# DataOps Platform - Cursor Editor Rules

## Project Overview
This is a Flask-based DataOps platform for data management, processing, and analytics.

## Code Style
- Use Python 3.8+ syntax
- Follow PEP 8 style guidelines
- Use type hints where possible
- Keep functions focused and single-purpose
- Use descriptive variable and function names

## Architecture
- Flask application with modular structure
- SQLAlchemy for database operations
- RESTful API design
- Blueprint-based routing
- Configuration-based environment management

## File Organization
- `app/` - Main application code
- `app/api/` - API endpoints and routes
- `app/models/` - Database models
- `app/services/` - Business logic
- `app/config/` - Configuration files
- `database/` - Database scripts and migrations
- `docs/` - Documentation
- `tests/` - Test files

## Dependencies
- Flask 2.3.3+
- SQLAlchemy 2.0+
- PostgreSQL database
- Neo4j graph database
- MinIO for file storage

## Development Guidelines
- Always use virtual environment
- Test API endpoints before committing
- Update documentation for API changes
- Use logging for debugging
- Handle errors gracefully

## API Conventions
- Use snake_case for Python functions and variables
- Use kebab-case for API endpoints
- Return consistent JSON responses
- Include proper HTTP status codes
- Validate input data

## Database
- Use migrations for schema changes
- Follow naming conventions for tables and columns
- Implement proper indexing
- Use transactions for data consistency

## Security
- Validate all user inputs
- Use environment variables for sensitive data
- Implement proper authentication
- Sanitize database queries
