---
title: Project Structure
description: "**/databases/**: Contains the main database (`maindb.db`) and project-specific SQLite databases (e.g., `MyProject.db`). **/modules/**: Core backend logic. - `web/`: Flask Blueprint definitions for web routes and API endpoints. - `gemini/`: Logic for interacting with the Gemini API. - `ai_chat.py`: Prompt construction…"
url: "https://erroranalyzer.com/docs/project-structure/"
updated: "2025-09-10"
category: Reference
---

# Project Structure

**/databases/**: Contains the main database (`maindb.db`) and project-specific SQLite databases (e.g., `MyProject.db`).

**/modules/**: Core backend logic.

- `web/`: Flask Blueprint definitions for web routes and API endpoints.
- `gemini/`: Logic for interacting with the Gemini API.
- `ai_chat.py`: Prompt construction and chat response handling.
- `google_nlp.py`: Interfaces with Google Cloud NLP API.
- `db.py`: Database schema, migrations, and queries.
- `diff_handler.py`: Logic for comparing wrong vs. corrected texts.
- `project_importer.py` / `project_exporter.py`: Zip-based project import/export.
- `utils.py` & `webutils.py`: Utility functions and security decorators.

**/static/**: Static assets (CSS, JS, images).

**/templates/**: Jinja2 HTML templates.
