@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 4 days ago
alembic Implement initial gnexus-creds MVP scaffold 4 days ago
docs Add project specification and implementation plan 4 days ago
frontend Add UI history audit and import flows 4 days ago
gnexus_creds Improve UI layout and serve kit fonts 4 days ago
scripts Implement initial gnexus-creds MVP scaffold 4 days ago
tests Fix OAuth callback expiry handling 4 days ago
.env.example Implement initial gnexus-creds MVP scaffold 4 days ago
.gitignore Fix OAuth callback expiry handling 4 days ago
Dockerfile Implement initial gnexus-creds MVP scaffold 4 days ago
README.md Implement initial gnexus-creds MVP scaffold 4 days ago
alembic.ini Implement initial gnexus-creds MVP scaffold 4 days ago
pyproject.toml Implement initial gnexus-creds MVP scaffold 4 days ago
uv.lock Implement initial gnexus-creds MVP scaffold 4 days ago
README.md

gnexus-creds

Personal secret storage service with REST API, MCP HTTP/SSE adapter, and Vue UI.

Backend

Install dependencies:

uv sync --extra dev

Run migrations:

uv run alembic upgrade head

Start API:

uv run uvicorn gnexus_creds.main:app --reload

Health endpoints:

GET /health
GET /ready

Frontend

The frontend lives in frontend/ and uses Vue 3 plus gnexus-ui-kit as a git dependency.

cd frontend
npm install
npm run dev

Note: gnexus-ui-kit must publish or prepare its dist/ artifacts for git dependency consumers. If dist/ is missing from the installed package, the UI build cannot resolve gnexus-ui-kit/vue or the kit CSS.

Tests

uv run pytest
uv run ruff check .

Demo Data

After applying migrations against a configured PostgreSQL database:

uv run python scripts/seed_demo.py

Docker

docker build -t gnexus-creds .
docker run --env-file .env -p 8000:8000 gnexus-creds