Big-Link-Man/docs/prd/non-functional-requirements.md

954 B

Non-Functional Requirements

NFR1: Python Development

The application and all scripts must be developed in Python.

NFR2: SQLite Database

The initial database must be SQLite.

NFR3: Database-Agnostic Architecture

The data access layer must be architected (e.g., using the Repository Pattern) to be database-agnostic, simplifying a future migration to a more scalable database like PostgreSQL.

NFR4: Environment Variables

All secrets, credentials, and API keys must be stored in and accessed from a .env file, not hardcoded.

NFR5: Command-Line Interface

The MVP will be a set of command-line tools; a web-based user interface is explicitly out of scope.

NFR6: Backup Protection

The interlinking script must create backups of any existing HTML files before modifying them to prevent data loss.

NFR7: Cloud Integration Libraries

Cloud integrations will use specific libraries: Boto3 for AWS S3 and the Azure SDK for Blob Storage.