https://github.com/lxzxl/create-tstack-web3
Scaffold a TanStack Start + wagmi + Hardhat 3 web3 app — create-* CLI for tanstack-web3-starter.
https://github.com/lxzxl/create-tstack-web3
create-app ethereum hardhat scaffold starter tanstack-start wagmi web3
Last synced: 11 days ago
JSON representation
Scaffold a TanStack Start + wagmi + Hardhat 3 web3 app — create-* CLI for tanstack-web3-starter.
- Host: GitHub
- URL: https://github.com/lxzxl/create-tstack-web3
- Owner: lxzxl
- License: mit
- Created: 2026-06-17T09:20:25.000Z (26 days ago)
- Default Branch: main
- Last Pushed: 2026-06-19T08:25:39.000Z (24 days ago)
- Last Synced: 2026-06-19T10:21:56.187Z (24 days ago)
- Topics: create-app, ethereum, hardhat, scaffold, starter, tanstack-start, wagmi, web3
- Language: JavaScript
- Size: 3.91 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# create-tstack-web3
Scaffold a **[TanStack Start + wagmi + Hardhat 3](https://github.com/lxzxl/tanstack-web3-starter)** web3 app — typed end-to-end, in one command.
```bash
npm create tstack-web3@latest my-web3-app
# or: pnpm create tstack-web3 my-web3-app
# or: yarn create tstack-web3 my-web3-app
```
Then:
```bash
cd my-web3-app
pnpm install
pnpm dev:all # local chain + deploy + codegen + web on http://localhost:3000
```
## What it does
Fetches the latest released [`tanstack-web3-starter`](https://github.com/lxzxl/tanstack-web3-starter)
template (falls back to `main`), extracts it into your new directory, sets the project
name, and runs `git init`. Generated code and `node_modules` are not included — they're
created on first `pnpm dev`/`build`.
## Zero dependencies
The CLI uses only Node built-ins (`fetch`) and the system `tar` — **no runtime npm
dependencies**. Requires **Node ≥ 18** and `tar` (preinstalled on macOS/Linux;
Windows 10+ ships it too).
## Options
- `TEMPLATE_REF=` — scaffold from a specific template ref (default: the latest release tag, then `main`).
## Releasing
Publishing is automated via GitHub Actions ([`.github/workflows/publish.yml`](.github/workflows/publish.yml))
on every GitHub Release — no manual `npm publish`, no OTP.
**One-time npm setup** (token-less, via OIDC Trusted Publishing): on npmjs.com →
this package → **Settings → Trusted Publisher** → **GitHub Actions**, repository
`lxzxl/create-tstack-web3`, workflow `publish.yml`.
**To release:**
```bash
# bump "version" in package.json, then:
git commit -am "release: vX.Y.Z" && git push
gh release create vX.Y.Z --generate-notes # → CI publishes to npm (with provenance)
```
> Prefer a token? Create an npm **Automation** token (bypasses 2FA), add it as the
> `NPM_TOKEN` repo secret, and uncomment `NODE_AUTH_TOKEN` in the workflow.
## License
MIT