Skip to content

feat(add): wire Go, Rust and Python backends - #258

Merged
Bccorb merged 1 commit into
mainfrom
feat/add-go-rust-python
Oct 8, 2026
Merged

Bccorb merged 1 commit into
mainfrom
feat/add-go-rust-python

Conversation

@Bccorb

@Bccorb Bccorb commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Second half of #248 (backends): seamless add now handles Go, Rust and Python projects on the v0.2.0 adapters.

What changes

  • Detection reads go.mod (Gin, chi or Echo from its requires, else net/http; entry at main.go, server.go or cmd/*/main.go), Cargo.toml with axum, and pyproject.toml or requirements.txt with FastAPI or Django (Django points at the settings module from manage.py). Rust without Axum and Python without FastAPI or Django are reported as unsupported, and every folder is now read, so an unsupported stack is noted even after a backend is found.
  • Installs use the ecosystem's tool: go get, cargo add, uv add, poetry add. A plain pip project gets pip install printed, not run, since the CLI cannot know which environment is the right one.
  • Printed code per framework, including the development-only code logging (Dev OTP to=... code=...), the /console mount behind SERVE_ADMIN_CONSOLE, a protected /api/me, and a note on how that language loads .env. The Axum code extends the existing router rather than replacing it.
  • Also fixes poetry detection for a pyproject that only has [tool.poetry.dependencies].
  • README, seamless help add and a minor changeset.

Verification

For each framework the printed code was pasted into a fresh app and built with that language's own toolchain, against a seamless add --local stack (auth API v0.18.0):

  • Gin, Axum, FastAPI, Django: full sign-in end to end (OTP from the dev log, cookie session, bearer token, /api/me, logout), console proxy 200. Django ran with CSRF middleware on.
  • Go net/http, chi, Echo: go vet and go build clean.
  • npm test 1240 passed; coverage 98.7 statements, 95.94 branches, 99.25 lines.

Angular, Vue and Svelte web apps remain on #248 once their bindings exist.

seamless add now detects go.mod (net/http, Gin, chi, Echo), Cargo.toml
(Axum), and pyproject.toml or requirements.txt (FastAPI, Django), installs
the matching adapter with the project's own tool, and prints the code for
that framework. A plain pip project gets the install printed instead of run.

Refs #248
@Bccorb
Bccorb merged commit 732afd7 into main Oct 8, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant