This logo is generated by Google Nano Banana 2
Ink is an open source management workspace for Memobird thermal printers. The repository currently contains a Vue web console, a Go API, local PostgreSQL tooling, and the maintenance scaffolding needed for long-term development.
Ink is still in early development. The product direction is stable enough for contribution, but APIs, schemas, and workflows may continue to evolve during the
0.xcycle.
web/: Vue 3, TypeScript, Vite, Pinia, Tailwind CSS, and Vitest frontend.server/: Go API for auth, workspace state, printers, plugins, schedules, and feedback.Makefile: top-level developer entrypoints for local setup and quality checks.
- Node.js 22
- pnpm 10
- Go 1.25
- Docker or another local PostgreSQL 16-compatible environment
pnpm install
cd web && pnpm installThe root install sets up repository Git hooks. The frontend install provides the web toolchain used by local checks.
make dev-db
make migrate-up
make seed-dev
make dev-api
make dev-webIf you only need the backend, make dev-api bootstraps .env, ensures the database is ready, applies migrations, seeds the development admin account, and starts the API server.
The development admin credentials are saved to server/.dev-admin-password on first bootstrap.
make check-web: lint, format check, unit tests, and production build for the frontendmake check-api:gofmt, Go tests, and backend buildmake smoke-api: login + workspace load/save/restore smoke test against a real API processmake build-web: production frontend buildmake test-api: backend unit tests only
- Web dashboard for conversations, status views, prints, settings, and tutorial flows
- Account authentication and per-user workspace persistence
- Printer bindings, print jobs, plugin installation, schedules, and feedback endpoints
- CI for web quality, server quality, dependency review, CodeQL, release automation, and Scorecard scanning
Contributions and suggestions are welcome. Please read CONTRIBUTING.md before opening an issue or pull request.
This project is licensed under the MIT License. See LICENSE for details.
