buenosairesam c4ec112607
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Fix trailing slash routes for artery/atlas/station
2026-01-02 23:45:18 -03:00
2026-01-02 11:42:19 -03:00
2026-01-02 22:56:47 -03:00
2026-01-02 19:05:57 -03:00
2025-12-31 12:44:30 -03:00
2026-01-02 20:59:33 -03:00
2026-01-02 19:05:57 -03:00
2025-12-24 05:38:37 -03:00

Soleprint

Cada paso deja huella / Each step leaves a mark

Development workflow platform. Run, test, and document everything in one place.

Quick Start

# Build standalone
python build.py dev
cd gen/standalone && .venv/bin/python run.py

# Build with room config
python build.py dev --cfg amar
cd gen/amar && .venv/bin/python run.py

# Visit http://localhost:12000

Commands

# Build
python build.py dev                # → gen/standalone/
python build.py dev --cfg amar     # → gen/amar/
python build.py dev --all          # → both

# ctrl scripts
./ctrl/build.sh                    # Build standalone
./ctrl/build.sh amar               # Build amar
./ctrl/build.sh --all              # Build all

./ctrl/start.sh                    # Start standalone (Docker)
./ctrl/start.sh amar               # Start amar
./ctrl/start.sh -d                 # Detached
./ctrl/stop.sh                     # Stop
./ctrl/logs.sh                     # View logs

Adding a New Managed Room

  1. Create room config directory:
mkdir -p cfg/clientx
  1. Add required files:
cfg/clientx/
├── .env.example           # Environment template
├── docker-compose.yml     # Room services (optional)
├── databrowse/depot/      # Database schemas (optional)
├── tester/tests/          # Room-specific tests (optional)
├── monitors/              # Room-specific monitors (optional)
├── models/                # Room-specific models (optional)
└── data/                  # Room-specific data files (optional)
    ├── depots.json        # Doc depots for Atlas
    └── shunts.json        # Mock connectors
  1. Build and run:
python build.py dev --cfg clientx
./ctrl/start.sh clientx

Systems

System What it does
👣 Soleprint Core coordinator, routing, landing page
💉 Artery Connectors to external services (Jira, Slack, Google)
🗺️ Atlas Actionable documentation (BDD, Gherkin, specs)
🎛️ Station Tools (modelgen, tester) and monitors (databrowse)

Structure

spr/
├── build.py           # Build tool
├── cfg/               # Room configurations
│   ├── soleprint.config.json
│   └── amar/          # AMAR room config
├── ctrl/              # Docker scripts
│
├── artery/            # Connectors
│   ├── veins/         # Jira, Slack, Google
│   ├── shunts/        # Fake connectors for testing
│   └── plexus/        # Full apps (backend + frontend)
│
├── atlas/             # Documentation
│   └── books/         # Soleprint docs only
│
├── station/           # Tools & monitors
│   ├── tools/         # modelgen, tester, datagen
│   └── monitors/      # databrowse
│
├── soleprint/         # Core (versioned)
│
├── gen/               # Built instances (gitignored)
│   ├── standalone/    # Base soleprint
│   └── amar/          # With amar config
│
└── mainroom/          # Orchestration with managed room
    ├── amar -> cfg/amar
    ├── soleprint/     # Soleprint Docker config
    └── ctrl/          # start, stop, deploy scripts

Artery Hierarchy

Vein ──► Pulse ──► Plexus
│        │         │
│        │         └── Full app (backend + frontend + DB)
│        └── Composed (Vein + Room + Depot)
└── Stateless API connector

Shunt ── Fake connector for testing

Ports

Service Port
Soleprint 12000
Amar Backend 8000
Amar Frontend 3000

Tools

Tool Purpose
modelgen Generate models from config
tester BDD/playwright test runner
datagen Test data generation
databrowse SQL data browser

Veins

Vein Auth
jira Token
slack Token
google OAuth2

Built for small teams who need to move fast without breaking things.

Description
No description provided
Readme 4.9 MiB
Languages
Python 44%
HTML 38.1%
Gherkin 13.5%
Shell 2.2%
CSS 1.4%
Other 0.7%