This project is a Python-based web application designed to interact with the Tarkov API, store item data in a Neo4j database, and provide optimization and tracking features.
- Flask Web Framework for the website interface
- Neo4j chosen as the graph database for its rich relationship management
- Docker Compose for containerizing both the application and database
- Environment Variables for secure configuration management
- Material Design for the user interface
- Automated Testing for core features
- Comprehensive Documentation
- Docker and Docker Compose
- Python 3.9+ (optional, for local development)
- Git
-
Clone this repository
-
Set up environment variables:
cp example.env .env # Edit .env with your configuration
-
Start the application:
docker-compose up --build
-
Visit
http://localhost:5000
Variable | Description | Example |
---|---|---|
FLASK_SECRET_KEY | Flask session secret | random_string_here |
NEO4J_PASSWORD | Database password | your_secure_password |
DOCKER_NEO4J_AUTH | Neo4j auth string | neo4j/your_password |
Variable | Default | Description |
---|---|---|
FLASK_ENV | development | Flask environment |
FLASK_DEBUG | 1 | Enable debug mode |
NEO4J_URI | bolt://localhost:7687 | Neo4j connection URI |
NEO4J_USER | neo4j | Neo4j username |
TarkovCultistCircle/
├── templates/ # HTML templates
├── static/ # Static assets (CSS, JS, images)
├── src/ # Python source code
│ ├── app.py # Flask application
│ ├── db.py # Database operations
│ └── routes.py # Route definitions
├── docs/ # Documentation
│ ├── DB_STRUCTURE.md
│ └── GRAPHQL_QUERIES.md
├── tests/ # Test files
├── docker-compose.yml # Docker configuration
├── Dockerfile # Application container definition
├── requirements.txt # Python dependencies
└── example.env # Environment template
-
Create virtual environment:
python -m venv venv source venv/bin/activate # or `venv\Scripts\activate` on Windows
-
Install dependencies:
pip install -r requirements.txt
-
Start Neo4j:
docker-compose up neo4j_db
-
Run Flask:
flask run
Run the test suite:
python -m pytest
- Fork the repository
- Create a feature branch
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.