11. Infrastructure and tools - FA-Systems-Operon/Operon GitHub Wiki
Infrastructure and Tools
The repository contains the following technologies and configurations for Operon's application foundation.
| Area | Technology | Purpose |
|---|---|---|
| Frontend | React, TypeScript, Vite | Provides the web application scaffold, type checking, and frontend builds. The current interface is a starter page. |
| Backend | Python, FastAPI, Uvicorn | Implements the API, including client and document routes, interactive API documentation, and a health endpoint. The backend container uses Python 3.11. |
| Database | PostgreSQL 17, SQLAlchemy, psycopg | Stores structured application data and provides database access from Python. |
| Document processing | pypdf, markdown-it-py, text extraction utilities | Extracts and normalizes text from supported PDF, Markdown, and text documents. |
| Containers and storage | Docker, Docker Compose, named volumes | Defines a local environment containing the frontend, backend, PostgreSQL, and Ollama. Named volumes are configured for database data, uploaded documents, and downloaded models. |
| AI infrastructure | Ollama | Included as a service in the Compose files, with an endpoint setting in the backend. This configuration does not establish a completed agent integration. |
| Testing | pytest, pytest-cov | Provides backend tests and coverage reporting. The GitHub Actions test workflow configures a separate PostgreSQL database and Python 3.13. |
| Code quality | Ruff, SonarQube Cloud, Codecov | Workflows are configured to check Python linting and formatting, run code analysis, and upload coverage reports. External reporting requires the configured repository secrets. |
| Collaboration and automation | GitHub, Issues, pull requests, Actions, Dependabot | Supports source control, task tracking, code review, and automated checks. Dependabot is configured to check GitHub Actions dependencies weekly. |
| Deployment configuration | Docker Compose, Caddy | Production-oriented configuration files define a reverse proxy and HTTPS routing. Their presence does not confirm a working production deployment or hosting provider. |
Application settings are supplied through environment variables. Database tables are currently created at startup using SQLAlchemy; there is no database migration system in the current implementation.
Authentication, human approval, and background agent execution are not implemented in the application code reviewed. Hosting and production readiness have not been verified.