27 lines
1.3 KiB
Markdown
27 lines
1.3 KiB
Markdown
# Promiscuity - Project Overview
|
|
|
|
This project is a multi-layered application consisting of a Godot-based game and a backend powered by .NET microservices and MongoDB.
|
|
|
|
## Project Structure
|
|
|
|
- `game/`: The Godot 4.5 game project.
|
|
- `microservices/`: ASP.NET Core 8.0 microservices providing backend logic (Auth, Character, Inventory, Locations, etc.).
|
|
- `.gitea/workflows/`: CI/CD pipelines for deploying microservices to Kubernetes.
|
|
|
|
## Core Mandates
|
|
|
|
- **Godot Development**: Follow guidelines in `game/GEMINI.md`.
|
|
- **Microservices Development**: Follow guidelines in `microservices/GEMINI.md`.
|
|
- **Infrastructure**: Deployment is handled via K8s. Dockerfiles are located in each microservice directory.
|
|
|
|
## Getting Started
|
|
|
|
- **Microservices**: Each microservice can be run individually or via the `micro-services.sln` solution file. They require a MongoDB instance (default: `mongodb://127.0.0.1:27017`).
|
|
- **Game**: Open `game/project.godot` in Godot Engine 4.5+.
|
|
|
|
## Shared Conventions
|
|
|
|
- **Naming**: Use PascalCase for C# (microservices) and snake_case for GDScript (game), as is idiomatic for each platform.
|
|
- **Documentation**: Maintain `DOCUMENTS.md` in microservice directories for API shapes and document models.
|
|
- **Communication**: The game communicates with microservices via HTTP/REST.
|