diff --git a/README.md b/README.md index cf4e968..3af327e 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,11 @@ # create-glstack -Scaffold a fullstack application with a Go backend, SvelteKit frontend, and PostgreSQL database, connected via Connect RPC. +Scaffold a fullstack application with a Go backend, PostgreSQL database, and your choice of frontend framework, connected via Connect RPC. -> **Work in progress** -- additional frontend frameworks and features are planned for future releases. +Supported frontends: + +- [SvelteKit](https://kit.svelte.dev/) +- [Solid Start](https://start.solidjs.com/) ## Usage @@ -15,7 +18,7 @@ bun create glstack A monorepo with the following structure: - **`services/api`** -- Go backend using [Cobra](https://github.com/spf13/cobra) for CLI, [pgx](https://github.com/jackc/pgx) for Postgres, and [Connect RPC](https://connectrpc.com/) for the API layer -- **`apps/web`** -- SvelteKit frontend with [shadcn-svelte](https://shadcn-svelte.com/), TailwindCSS, [TanStack Query](https://tanstack.com/query), and [Paraglide](https://inlang.com/m/gerre34r/library-inlang-paraglideJs) for i18n +- **`apps/web`** -- Frontend app (SvelteKit or Solid Start) with TailwindCSS and [TanStack Query](https://tanstack.com/query) - **`packages/proto`** -- Protobuf service definitions with [Buf](https://buf.build/) for codegen (Go + TypeScript) - **`packages/rpc`** -- Generated TypeScript Connect RPC client shared across frontend apps @@ -23,16 +26,16 @@ A monorepo with the following structure: The template includes a [devenv.nix](https://devenv.sh/) configuration that sets up: -- Go, TypeScript, Bun +- Go, TypeScript, Bun, Node.js - PostgreSQL with an auto-provisioned database -- File watchers for protobuf, SQL, and frontend hot reload +- File watchers for protobuf, SQL, and frontend hot reload with proper process dependency ordering - [Air](https://github.com/air-verse/air) for Go live reload - [sqlc](https://sqlc.dev/) for type-safe SQL - [dbmate](https://github.com/amacneil/dbmate) for database migrations ### Starter example -The generated project includes a working Todo CRUD example wired end-to-end: protobuf schema, Go service implementation, SQL queries, and a SvelteKit UI. +The generated project includes a working Todo CRUD example wired end-to-end: protobuf schema, Go service implementation, SQL queries, and frontend UI. ## License