Add .gitignore file and update README and implementation plan documentation
This commit is contained in:
21
.gitignore
vendored
Normal file
21
.gitignore
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
# temp files
|
||||||
|
.DS_Store
|
||||||
|
|
||||||
|
# IDE files
|
||||||
|
.vscode/
|
||||||
|
.idea/
|
||||||
|
|
||||||
|
# Python files
|
||||||
|
__pycache__/
|
||||||
|
*.pyc
|
||||||
|
*.pyo
|
||||||
|
|
||||||
|
# Virtual environments
|
||||||
|
env/
|
||||||
|
.venv/
|
||||||
|
|
||||||
|
# environment variables
|
||||||
|
.env
|
||||||
|
|
||||||
|
# github instruction files
|
||||||
|
.github/instructions/
|
||||||
23
README.md
23
README.md
@@ -2,14 +2,13 @@
|
|||||||
|
|
||||||
A web application to plan mining projects and estimate costs, returns and profitability.
|
A web application to plan mining projects and estimate costs, returns and profitability.
|
||||||
|
|
||||||
## Tech Stack
|
Focuses on ore mining operations and covering parameters such as capital and operational expenditures, resource consumption, production output, and Monte Carlo simulations for risk analysis.
|
||||||
|
|
||||||
- **Backend**: Python 3.10+ (FastAPI)
|
The system is designed to help mining companies make informed decisions by simulating various scenarios and analyzing potential outcomes based on stochastic variables.
|
||||||
- **Database**: PostgreSQL
|
|
||||||
- **Frontend**: (TBD)
|
|
||||||
- **Testing**: pytest
|
|
||||||
|
|
||||||
## Planned Features
|
A range of features are implemented to support these functionalities.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
- **Scenario Management**: The database supports different scenarios for what-if analysis, with parent-child relationships between scenarios.
|
- **Scenario Management**: The database supports different scenarios for what-if analysis, with parent-child relationships between scenarios.
|
||||||
- **Monte Carlo Simulation**: The system can perform Monte Carlo simulations for risk analysis and probabilistic forecasting.
|
- **Monte Carlo Simulation**: The system can perform Monte Carlo simulations for risk analysis and probabilistic forecasting.
|
||||||
@@ -21,6 +20,18 @@ A web application to plan mining projects and estimate costs, returns and profit
|
|||||||
- **Equipment Management**: The system manages equipment and their operational data.
|
- **Equipment Management**: The system manages equipment and their operational data.
|
||||||
- **Maintenance Logging**: It includes a log for equipment maintenance events.
|
- **Maintenance Logging**: It includes a log for equipment maintenance events.
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
The architecture is documented in [docs/architecture.md](docs/architecture.md).
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
The development setup instructions are provided in [docs/development_setup.md](docs/development_setup.md).
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
|
||||||
|
Testing guidelines and best practices are outlined in [docs/testing.md](docs/testing.md).
|
||||||
|
|
||||||
## Database Objects
|
## Database Objects
|
||||||
|
|
||||||
The database is composed of several tables that store different types of information. All tables are under schema `bricsium_platform`. See `structure.sql` for full DDL. Here are some of the most important ones:
|
The database is composed of several tables that store different types of information. All tables are under schema `bricsium_platform`. See `structure.sql` for full DDL. Here are some of the most important ones:
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
1. Create `models/scenario.py` for DB interactions.
|
1. Create `models/scenario.py` for DB interactions.
|
||||||
2. Implement API endpoints in `routes/scenarios.py`: GET, POST, PUT, DELETE.
|
2. Implement API endpoints in `routes/scenarios.py`: GET, POST, PUT, DELETE.
|
||||||
3. Add frontend component `components/ScenarioForm.vue` for CRUD.
|
3. Add frontend component `components/ScenarioForm.html` for CRUD.
|
||||||
4. Update `README.md` with API docs.
|
4. Update `README.md` with API docs.
|
||||||
|
|
||||||
## Feature: Parameter Input and Validation
|
## Feature: Parameter Input and Validation
|
||||||
@@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
1. Define parameter schemas in `models/parameters.py`.
|
1. Define parameter schemas in `models/parameters.py`.
|
||||||
2. Create validation middleware in `middleware/validation.py`.
|
2. Create validation middleware in `middleware/validation.py`.
|
||||||
3. Build input form in `components/ParameterInput.vue`.
|
3. Build input form in `components/ParameterInput.html`.
|
||||||
4. Integrate with scenario management.
|
4. Integrate with scenario management.
|
||||||
|
|
||||||
## Feature: Monte Carlo Simulation Run
|
## Feature: Monte Carlo Simulation Run
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
### Reporting Implementation Steps
|
### Reporting Implementation Steps
|
||||||
|
|
||||||
1. Create report service `services/reporting.py`.
|
1. Create report service `services/reporting.py`.
|
||||||
2. Build dashboard component `components/Dashboard.vue`.
|
2. Build dashboard component `components/Dashboard.html`.
|
||||||
3. Fetch data from simulation results.
|
3. Fetch data from simulation results.
|
||||||
4. Add charts using Chart.js.
|
4. Add charts using Chart.js.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user