Welcome to the dojo locker. This repo is the shareable slice of our infra stack—just the pieces we’re cool blasting to the world:
debtcodersdojo.com
+debtcodersdoja.com
landing vibes- FastAPI brain behind
api.debtcodersdoja.com
- NGINX server blocks, runbooks, and the handoff playbook for friendly bots
web/
├── api.debtcodersdoja.com/ # FastAPI app, systemd units, deployment notes
├── nginx/ # sites-available configs + enabled symlinks
└── www/ # static microsites per domain
dashboard/ # Vite + React Ops cockpit (build → dist/)
AGENT.md # ops runbook for humans
AGENTS.md # contributor + style guide
AI_AGENT_HANDOFF.md # production briefing for automation homies
style.md # palette + theme cheatsheet
No secrets live here. .gitignore
already walls off uploads, certs, logs, and anything spicy.
git clone git@github.com:debtcoder/debtcoder.git
cd debtcoder
# pull fresh assets from the prod box when you’re ready to sync
rsync -av /home/debtcoder/web ./web/
rsync -av /home/debtcoder/dashboard ./dashboard/
cp /home/debtcoder/{AGENT.md,AGENTS.md,AI_AGENT_HANDOFF.md} ./
Before you push, skim AGENT.md
so you don’t miss a deploy step. Need GitHub to listen? Remember: on the server we ride with
sudo env GIT_SSH_COMMAND=... git push
so the network cops chill out.
The React cockpit talks to https://api.debtcodersdoja.com
by default. Point it elsewhere with VITE_API_BASE
.
cd dashboard
npm install
npm run dev -- --host 0.0.0.0 --port 4173
# build static bundle
npm run build
Ship the compiled dist/
via NGINX (e.g., /var/www/api.debtcodersdoja.com/dashboard
) or any static host.
Copy .env.example
to .env
and set:
VITE_API_BASE
(optional override)VITE_API_KEY
(must matchAPI_ACCESS_KEY
on the API server)
- Send
X-Doja-Key: <secret>
on every request (value lives in/etc/api-debtcodersdoja.env
). /fs/list
– list files/directories under uploads (optionalpath
query)/fs/read
– stream UTF-8 file content from uploads/fs/write
– write/update text files (auto-creates folders)/fs/delete
– remove files inside uploads- Swagger
/docs
exposes the same key via “Authorize” (API key in header). - Current API version:
0.2.0
(configure viaAPI_VERSION
in/etc/api-debtcodersdoja.env
). - Tip: leave
path
empty (or/
) with/fs/list
for the root;uploads/
prefixes are stripped automatically. - Legacy multipart upload still lives at
/upload
Maintainer: debtCoder debtcoder@gmail.com