Skip to content

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 03 Jun 14:11
· 983 commits to main since this release
3bf013e

Better Fullstack v2.0.0 is live

This is the multi-ecosystem release.

You can now build projects where each part of the app can use the ecosystem that fits it best.

TypeScript frontend.
Go, Rust, Python, Java, or Elixir backend.
Database layer.
Mobile app.
One project model.
One generated command.

Multi-ecosystem support

Better Fullstack is no longer limited to one ecosystem per project.

v2.0 adds a new stack graph model that understands project roles:

  • Frontend
  • Backend
  • Database
  • Mobile
  • Shared tooling

That means the builder and CLI can now reason about a project as a real product made from multiple parts, instead of one flat list of options.

New CLI part syntax

The CLI can now parse and generate scoped project parts.

Example:

bun create better-fullstack my-app \
  --part frontend:typescript:react-vite \
  --part backend:go:gin \
  --database postgres

The important bit: choices now belong to the right role.

A backend option is a backend option.
A frontend library stays in the frontend flow.
Database choices stay tied to the database layer.

Redesigned web builder

The /new builder has been rebuilt around the new model.

The multi-ecosystem flow is now:

  1. Frontend
  2. Backend
  3. Database
  4. Mobile
  5. Finalize

Each step focuses on one part of the project.

The final step handles general settings like package manager, AI docs, git, and version channel.

Command preview while you build

The builder now works better as a command composer.

You can keep choosing tools and still see the generated command update as you go.

Partial command during the flow.
Full command at the end.
Copy when ready.

Better multi-ecosystem UX

v2.0 also includes a lot of polish around the builder:

  • Multi-Ecosystem mode is now a first-class toggle in the header
  • New update modal for the 2.0 launch
  • Cleaner step navigation
  • Better role cards
  • Tool icons in the right places
  • Less noise in the Finalize step
  • Compatibility fixes so TypeScript-only libraries do not appear where they should not

Generator support

The template generator now understands stack graph parts across the main ecosystem handlers.

This release wires the foundation through:

  • TypeScript
  • Go
  • Rust
  • Python
  • Java
  • Elixir
  • Database templates

Not every possible combination is finished yet, but the base is now in place.

This is what lets future ecosystem combinations grow without bolting everything onto the old flat config.

Validation and compatibility fixes

A lot of this release is about making the new model behave correctly.

Fixed and improved:

  • Scoped backend validation
  • Go auth command roundtrips
  • Web command roundtrips
  • Reproducible CLI commands
  • Frontend-only TypeScript options showing in the wrong step
  • TypeScript defaults leaking into non-TypeScript stacks
  • Builder CI and Playwright coverage around the new flow

Published packages

Published to npm:

  • create-better-fullstack@2.0.0
  • create-bfs@2.0.0
  • @better-fullstack/types@2.0.0
  • @better-fullstack/template-generator@2.0.0

Create a new project:

npm create better-fullstack@latest

or:

bun create better-fullstack@latest

Verified before release

v2.0 passed the release pipeline before publishing:

  • Release Guard
  • Lint
  • Test
  • Build Check
  • Smoke Test
  • Strict smoke tests
  • Playwright builder tests
  • Web command roundtrip
  • Package manager matrix
  • CodeQL

Why 2.0

This is a foundation release.

Better Fullstack is becoming a builder for real full-stack systems, not just single-ecosystem starter apps.

v2.0 gives the CLI, web builder, compatibility layer, and generator the same language for describing a project.

That unlocks the next phase: more ecosystem combinations, deeper validation, better previews, and smoother generation for teams building across multiple stacks.

Full changelog:
v1.8.1...v2.0.0