Busabase
Busabase is an open-source (MIT) database and workspace for AI agents — data, docs, skills, and apps in one place. Run it locally, self-host it inside your network, or use Busabase Cloud, and turn age
翻訳待ち
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A real-time operational analytics platform for mining and aggregate processing networks. Visualize equipment relationships, simulate faults, and understand cascading impacts across your supply chain with two-tier impact analysis.
Deployment: https://stonelink.onrender.com
✨ Visual Graph Analytics
⚡ Two-Tier Fault Simulation
📊 Operational Dashboards
🔍 Smart Filtering
# Clone repository
git clone https://github.com/yourusername/stonelink.git
cd stonelink
# Create virtual environment
python -m venv venv
source venv/bin/activate # macOS/Linux
# or
venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txt
# Set up environment
cp .env.example .env
# Edit .env with your Neo4j credentials:
# NEO4J_URI=neo4j://localhost:7687
# NEO4J_USER=neo4j
# NEO4J_PASSWORD=your_password
# Import sample data (creates 31 nodes, 39 relationships)
python scripts/import_data.py
# Start Flask development server
python app.py
Open http://localhost:5000 in your browser. The graph loads automatically.
See DEPLOYMENT.md for step-by-step guide:
Result: Live app at https://stonelink-api-xxxxx.onrender.com
stonelink/
├── app.py # Flask backend (6 REST endpoints)
├── requirements.txt # Python dependencies
├── Procfile # Render deployment config
├── runtime.txt # Python version for Render
├── .env.example # Environment template
├── .gitignore # Git ignore rules
│
├── static/
│ ├── index.html # Single-page app
│ ├── js/
│ │ └── app.js # Cytoscape visualization & fault simulation
│ └── css/
│ └── style.css # Graph styling & impact colors
│
├── scripts/
│ ├── import_data.py # Neo4j data import script
│ └── data/
│ ├── minas.csv # Mining sites
│ ├── camiones.csv # Trucks
│ ├── plantas.csv # Processing plants
│ ├── operadores.csv # Operators/drivers
│ ├── materiales.csv # Materials
│ └── eventos.csv # Incident logs
│
├── docs/
│ ├── ARCHITECTURE.md # System design & topology
│ ├── API.md # REST endpoint reference
│ ├── DEPLOYMENT.md # Production setup guide
│ └── README.md # This file
│
└── .claude/ # Development metadata (ignored by git)
| Endpoint | Method | Purpose | Time |
|---|---|---|---|
/api/graph | GET | Load full network graph | 50-100ms |
/api/simular_falla | POST | Simulate fault & get direct + indirect impacts | 100-200ms |
/api/eventos | GET | All incidents sorted by criticality | 30-50ms |
/api/metricas | GET | Node counts & operational summary | 50-80ms |
/api/flujo | GET | Operational flow (mines → plants) | 50-100ms |
curl -X POST http://localhost:5000/api/simular_falla \
-H 'Content-Type: application/json' \
-d '{"equipo": "Cantera Central"}'
Response:
{
"target": "Cantera Central",
"target_label": "Mina",
"target_id": "4",
"direct_ids": ["8", "13", "17", "27"],
"indirect_ids": ["5"],
"direct_nodes": [
{"id": 8, "label": "Camion", "nombre": "Volvo A40"},
{"id": 13, "label": "Operador", "nombre": "Ana Rodriguez"},
{"id": 17, "label": "Operador", "nombre": "Sofia Ruiz"},
{"id": 27, "label": "Material", "nombre": "Grava gruesa"}
],
"indirect_nodes": [
{"id": 5, "label": "Planta", "nombre": "Planta B"}
]
}
Full endpoint reference: API.md
The fault simulation uses a directed, typed, depth-limited graph traversal to prevent false positives:
When a node fails (e.g., Cantera Central mine):
Tier 1 (Direct Impact) — 1 hop with explicit relationship types:
Cantera Central (Mina)
├─ ← OPERA_EN → Volvo A40 (Camion) [Trucks at this mine]
├─ ← TRABAJA_EN → Ana Rodriguez (Operador) [Workers there]
├─ ← TRABAJA_EN → Sofia Ruiz (Operador) [Workers there]
└─ → GENERA → Grava gruesa (Material) [What it produces]
Tier 2 (Indirect Impact) — 1 hop from each Tier-1 node:
Volvo A40 (Camion)
└─ → TRANSPORTA → Planta B (Planta) [Delivery destination]
[Terminal: Operador and Material don't propagate further]
This is the beginning of the README. Read the rest at the original. Read the full README ↗