Files
terminalShop-old/README.md
marcusDenslow cb048bc3dc
Some checks failed
Deploy / deploy (push) Has been cancelled
chore: untrack binaries and update README
Remove compiled binaries (main, terminalShop, api/main, api/api-server)
and server.go.old from git tracking. Add them to .gitignore. Update
README to reflect current project state accurately.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 11:32:21 +02:00

1.4 KiB

Terminal Coffee Shop

A coffee shop you access over SSH. Built with Go, Bubbletea, Wish, Chi, PostgreSQL, Stripe, and Shippo.

ssh localhost -p 23456

Running locally

# Copy and fill in your env vars
cp .env.example .env

# Start the API server
go run api/main.go

# Start the SSH server
go run main.go

Stack

Layer Tech
TUI Bubbletea + Wish (SSH)
HTTP API Chi router
Database PostgreSQL + GORM
Auth SSH key fingerprint + JWT
Payments Stripe
Shipping Shippo

What's working

  • SSH server — key-based auth, auto user creation on first connect
  • Splash screen with animated blinking cursor while auth + data loads
  • Shop page — browse products with a live detail panel on the right
  • Cart — add/remove items, synced to the API
  • Checkout flow — shipping address → payment → confirmation
  • Save/delete shipping addresses and payment cards
  • Order history in the account view
  • FAQ page
  • Help page
  • Responsive layout across small, medium, and large terminals
  • Centralized theme system (no more scattered hex values)
  • Token refresh

Known bugs

  • Address delete has an off-by-one slice bug in shipping_form.go:386
  • Account page has a leftover placeholder menu item somewhere in the models

TODO

  • Viewport-based scrolling (currently manual scroll math with hardcoded heights)
  • API token management page
  • OAuth app management page
  • About page