Skip to content

sneat-co/listus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

listus

Listus — todo, shopping, watch and other lists. A standalone full-stack product extracted from sneat-apps.

License: AGPL-3.0

Repository layout

This repo hosts two independent toolchains in subdirectories — neither package.json nor go.mod lives at the repo root:

Directory Stack Description
frontend/ Nx · Angular 21 · Ionic 8 · pnpm The listus-app standalone app and public Listus UI/runtime packages
backend/ Go 1.26 Backend service (scaffold — health endpoint only for now)

Packages

The public Listus extension is split into a contract, UI, and runtime:

  • @sneat/extension-listus-contract — DTOs/types and the LISTUS_SERVICE token, owned and released by ext-listus.
  • @sneat/extension-listus-ui — routes, pages, components, and space menu.
  • @sneat/extension-listus — concrete services and provideListus().

Library boundaries

The public contract is intentionally small and contains no UI or concrete services. UI may depend on contracts, while runtime may depend on UI and contracts. The composition-root app wires provideListus() to bind LISTUS_SERVICE to ListService. These rules are enforced by @nx/enforce-module-boundaries using layer:contract, layer:ui, layer:runtime, and layer:app tags.

Running locally

Frontend (listus-app)

cd frontend
pnpm install
pnpm exec nx serve listus-app        # standalone app (Vite dev server)
pnpm exec nx run-many -t lint test build
pnpm exec nx e2e listus-app-e2e      # Playwright smoke

listus-app reuses the sneat space framework and Firebase config, so for real auth + list data it needs the same backing services as sneat-app: Firebase emulators (auth :9099, firestore :8080) and sneat-go-server (:4300), all under project local-sneat-app. See sneat-apps/docs/RUN-LOCAL.md for the full stack. (A dedicated listus backend is scaffolded under backend/ but currently only serves /health.)

Backend (scaffold)

cd backend
go run ./cmd/listusd                 # :8080  (override with LISTUS_ADDR), GET /health -> 200
go test ./...

See frontend/README.md and backend/README.md for more per-stack detail.

Standards

This is a Sneat extension — build it against the shared platform standards:

About

Listus — todo, shopping and watch lists. Standalone full-stack app (Angular + Go). AGPL-3.0.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors