gnexus-book / server /
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 22 days ago
..
app Add documentation foundation and backend maintenance API 22 days ago
tests Add documentation foundation and backend maintenance API 22 days ago
README.md Add documentation foundation and backend maintenance API 22 days ago
pyproject.toml Add documentation foundation and backend maintenance API 22 days ago
README.md

Gnexus Book Server

FastAPI backend for reading Gnexus Book documentation and inventory.

Development

From the repository root:

cd server
python3 -m venv .venv
. .venv/bin/activate
pip install -e ".[dev]"
uvicorn app.main:app --reload --host 127.0.0.1 --port 8080

Current API

  • Swagger UI: GET /api-docs
  • GET /health
  • GET /docs
  • GET /docs/read?path=...
  • GET /search?q=...
  • GET /inventory
  • GET /inventory/{type}
  • GET /inventory/{type}/{id}
  • GET /traffic-routes
  • GET /health/freshness
  • GET /validate
  • GET /changes
  • GET /changes/{id}
  • POST /changes
  • POST /changes/{id}/apply
  • GET /git/status
  • GET /git/diff
  • POST /commit

Inventory parsing requires PyYAML.

Current Limitations

  • Main documentation and inventory files are read-only.
  • POST /changes can create pending change records under 90-maintenance/pending-changes/.
  • POST /changes/{id}/apply can apply kind=doc and kind=inventory-item changes after validation.
  • No authentication yet.
  • No commit or review workflow yet.
  • POST /commit creates a local Git commit only. It does not push.
  • Commit requests must provide an explicit file list.
  • Validation uses JSON Schema 2020-12 for inventory files.