⚠️ WORK IN PROGRESS DONT TAKE REFERENCE!!!
better-t-stackBetter T Stack

Frequently Asked Questions

Common questions and answers about Better-T-Stack CLI

General Questions

What is Better-T-Stack?

Better-T-Stack is a modern CLI tool that helps you scaffold end-to-end type-safe TypeScript projects. It provides opinionated, production-ready configurations for full-stack applications with support for multiple frontend frameworks, backend frameworks, databases, and deployment options.

How is Better-T-Stack different from other scaffolding tools?

  • End-to-End Type Safety: TypeScript across your entire stack with proper type sharing
  • Modern Stack Focus: Latest versions of popular frameworks and tools
  • Production Ready: Configurations used in real production applications
  • Highly Customizable: Mix and match technologies based on your needs
  • Monorepo Structure: Organized project structure with shared packages
  • Database Integration: Built-in database setup and ORM configuration
  • Authentication: Integrated auth with Better-Auth
  • Multi-Platform: Web, mobile, and desktop app support in one project

Is Better-T-Stack free to use?

Yes, Better-T-Stack is completely free and open-source under the MIT license. You can use it for personal and commercial projects without any restrictions.

Do I need to know all these technologies to use Better-T-Stack?

No! Better-T-Stack is designed to help you learn modern full-stack development. Each generated project includes:

  • Comprehensive README with setup instructions
  • Example code and patterns
  • TypeScript for better developer experience
  • Best practices and folder structure

Installation & Setup

Which package manager should I use?

You can use any of the major package managers:

  • npm: Most widely supported, comes with Node.js
  • pnpm: Faster installs, better disk space efficiency
  • bun: All-in-one runtime, extremely fast

For monorepo projects, we recommend pnpm for its excellent workspace support.

Do I need to install the CLI globally?

No, you can use npx to run the latest version without installation:

npx create-better-t-stack@latest my-project

This ensures you always use the latest version with the newest features and bug fixes.

What Node.js version do I need?

Better-T-Stack requires Node.js 18 or higher. We recommend using the latest LTS version for the best experience.

Can I use Better-T-Stack with existing projects?

Better-T-Stack is designed for new projects. For existing projects, you can:

  1. Create a new Better-T-Stack project
  2. Gradually migrate your code
  3. Use the add command to add specific features to existing Better-T-Stack projects

Configuration & Stack Choices

Can I change my stack choices after creating a project?

Some changes are possible:

  • Easy: Add addons, examples, or deployment configurations using the add command
  • Medium: Switch between compatible ORMs or databases (requires manual migration)
  • Hard: Change frontend/backend frameworks (requires significant refactoring)

It's best to plan your stack carefully during initial setup.

What's the difference between tRPC and oRPC?

  • tRPC: End-to-end type safety with TypeScript inference, great for TypeScript-only projects
  • oRPC: OpenAPI-compatible type-safe APIs, better for teams using multiple languages or requiring OpenAPI specs

Both provide excellent type safety, choose based on your team's needs.

Should I use Drizzle or Prisma?

  • Drizzle: TypeScript-first, lightweight, great for edge deployments, SQL-like syntax
  • Prisma: Feature-rich, mature ecosystem, great tooling, GraphQL-like schema

Choose Drizzle for modern TypeScript projects and Prisma for feature-rich applications.

For beginners, we recommend:

npx create-better-t-stack@latest my-first-project \
  --frontend tanstack-router \
  --backend hono \
  --database sqlite \
  --orm drizzle \
  --auth \
  --addons turborepo biome

This provides a simple but powerful full-stack setup that's easy to understand and deploy.


Compatibility Questions

Can I use MongoDB with Drizzle?

No, Drizzle doesn't support MongoDB. For MongoDB, use:

  • Prisma ORM: Full ORM support for MongoDB
  • Mongoose: Traditional MongoDB object modeling

Why can't I use tRPC with Nuxt/SvelteKit/SolidJS?

tRPC is primarily designed for React ecosystems. For these frameworks, use:

  • oRPC: Provides similar type safety with broader framework support
  • None: Use the framework's built-in API capabilities

Can I use Cloudflare Workers with any backend?

Cloudflare Workers runtime only supports:

  • Backend: Hono only
  • Database: SQLite with Cloudflare D1
  • ORM: Drizzle only

This is due to the serverless nature and limitations of the Workers environment.

Which addons work with which frontends?

AddonCompatible Frontends
PWATanStack Router, React Router, SolidJS, Next.js
TauriTanStack Router, React Router, Nuxt, SvelteKit, SolidJS, Next.js
TurborepoAll frontends
BiomeAll frontends
HuskyAll frontends
StarlightAll frontends

Database & Hosting

What database should I choose for production?

For small to medium applications:

  • SQLite + Turso: Excellent performance, easy scaling
  • PostgreSQL + Neon: Serverless PostgreSQL, great for startups

For large applications:

  • PostgreSQL + Supabase: Full backend-as-a-service
  • MongoDB + Atlas: NoSQL flexibility with managed hosting

Do I need Docker for development?

Docker is optional and only required for:

  • Database Setup: If you choose --db-setup docker
  • Local Development: Some setups like Supabase local development

Many database options (Turso, Neon, MongoDB Atlas) don't require Docker.

How do I deploy my Better-T-Stack application?

Better-T-Stack projects are configured for easy deployment:

Frontend:

  • Vercel: Zero-config deployment for Next.js, React apps
  • Netlify: Static site deployment
  • Cloudflare Workers: Edge deployment with --web-deploy workers

Backend:

  • Railway: Easy backend deployment
  • Fly.io: Global application deployment
  • Cloudflare Workers: Serverless edge deployment

Development & Troubleshooting

My project won't start after creation. What should I do?

  1. Check Node.js version: Ensure you're using Node.js 18+
  2. Install dependencies: Run npm install in the project directory
  3. Check environment variables: Copy .env.example to .env and fill in values
  4. Database setup: Run database migrations if using a database
  5. Check the README: Each project includes detailed setup instructions

I'm getting TypeScript errors. How do I fix them?

  1. Install dependencies: Ensure all packages are installed
  2. Restart TypeScript server: In VS Code, use Ctrl/Cmd + Shift + P → "TypeScript: Restart TS Server"
  3. Check imports: Ensure all imports are correct and packages are installed
  4. Update types: Run npm run check-types to see detailed errors

How do I update dependencies in my project?

# Check for updates
npx taze -r

# Update all dependencies
npm update

# Or with other package managers
pnpm update
bun update

Can I use Better-T-Stack with VS Code?

Yes! Better-T-Stack projects work excellently with VS Code. We recommend these extensions:

  • TypeScript and JavaScript Language Features (built-in)
  • Tailwind CSS IntelliSense
  • Prisma or Drizzle Kit extensions
  • ESLint (if using Biome addon)

My mobile app won't connect to the backend. What's wrong?

This is a common issue with Expo and local development:

  1. Check environment variables: Update EXPO_PUBLIC_SERVER_URL in apps/native/.env
  2. Use your local IP: Replace localhost with your computer's IP address
  3. Check firewall: Ensure your firewall allows connections on port 3000
  4. Use tunnel: Consider using npx expo start --tunnel

Advanced Usage

Can I customize the generated templates?

Currently, Better-T-Stack doesn't support custom templates, but you can:

  1. Fork the repository and modify templates
  2. Create a feature request for specific customizations
  3. Modify the generated project after creation

How do I contribute to Better-T-Stack?

We welcome contributions! Here's how to get started:

  1. Fork the repository on GitHub
  2. Clone your fork locally
  3. Install dependencies: pnpm install
  4. Make your changes and test them
  5. Submit a pull request with a clear description

Can I use Better-T-Stack in my company/team?

Absolutely! Better-T-Stack is perfect for:

  • Standardizing project structure across teams
  • Onboarding new developers with consistent setup
  • Rapid prototyping and MVP development
  • Client projects with proven, production-ready configurations

How do I disable telemetry?

Better-T-Stack collects anonymous usage data to improve the tool. To disable:

# Disable for single run
BTS_TELEMETRY_DISABLED=1 npx create-better-t-stack@latest my-app

# Disable globally
export BTS_TELEMETRY_DISABLED=1

Add the export to your shell profile (.bashrc, .zshrc, etc.) to make it permanent.


Getting Help

Where can I get help?

  • Documentation: Comprehensive guides at better-t-stack.dev/docs
  • GitHub Issues: Report bugs or request features
  • GitHub Discussions: Community support and questions
  • Discord/Twitter: Follow for updates and community discussion

How do I report a bug?

  1. Search existing issues to avoid duplicates
  2. Create a new issue with:
    • Clear description of the problem
    • Steps to reproduce
    • Your system information (OS, Node.js version, etc.)
    • Generated project configuration
    • Error messages or screenshots

How do I request a new feature?

  1. Check existing feature requests in GitHub Issues
  2. Create a new issue with the "feature request" label
  3. Describe the feature and its use case
  4. Explain why it would benefit the community

Is there a community?

Yes! You can connect with other Better-T-Stack users:

  • GitHub Discussions: Ask questions and share projects
  • Twitter: Follow @AmanVarshney01 for updates
  • Show your projects: Tag us when you build something with Better-T-Stack!

Sponsorship & Support

How can I support Better-T-Stack?

  • ⭐ Star the repository on GitHub
  • 🐛 Report bugs and suggest improvements
  • 💰 Sponsor the project on GitHub Sponsors
  • 📢 Share with others who might find it useful
  • 🤝 Contribute code or documentation

Who sponsors Better-T-Stack?

View current sponsors by running:

npx create-better-t-stack@latest sponsors

Or visit: github.com/sponsors/AmanVarshney01


Still have questions? Feel free to ask in GitHub Discussions or check our documentation.

On this page

General QuestionsWhat is Better-T-Stack?How is Better-T-Stack different from other scaffolding tools?Is Better-T-Stack free to use?Do I need to know all these technologies to use Better-T-Stack?Installation & SetupWhich package manager should I use?Do I need to install the CLI globally?What Node.js version do I need?Can I use Better-T-Stack with existing projects?Configuration & Stack ChoicesCan I change my stack choices after creating a project?What's the difference between tRPC and oRPC?Should I use Drizzle or Prisma?What's the recommended stack for beginners?Compatibility QuestionsCan I use MongoDB with Drizzle?Why can't I use tRPC with Nuxt/SvelteKit/SolidJS?Can I use Cloudflare Workers with any backend?Which addons work with which frontends?Database & HostingWhat database should I choose for production?Do I need Docker for development?How do I deploy my Better-T-Stack application?Development & TroubleshootingMy project won't start after creation. What should I do?I'm getting TypeScript errors. How do I fix them?How do I update dependencies in my project?Can I use Better-T-Stack with VS Code?My mobile app won't connect to the backend. What's wrong?Advanced UsageCan I customize the generated templates?How do I contribute to Better-T-Stack?Can I use Better-T-Stack in my company/team?How do I disable telemetry?Getting HelpWhere can I get help?How do I report a bug?How do I request a new feature?Is there a community?Sponsorship & SupportHow can I support Better-T-Stack?Who sponsors Better-T-Stack?