DEV Community

JOE CELASTER
JOE CELASTER

Posted on

We Have Too Many Frameworks. Why Are Our CLIs Still Opinionated?

Developers are using various frameworks to build web application. For instance, prominently We use - nextjs, svelte, react for frontend, Express, Fastify for backend, Postgres, MySQL for database and respective providers and preferred package manager and runtime env.

But to setup a web application with their preferred stack they still need to depend on various cli to setup the projects.

But people can just use AI to setup right ?

Yes, but still they need to run various CLI commands to setup the application. They spend at least 30 mins to setup even before to start code.

Average CLI commands involved to setup application with Nextjs, Express, Nodejs, PgSQL,prisma, turborepo, clerk, supabase.

# Create monorepo
npx create-turbo@latest

# Create Next.js app
npx create-next-app@latest apps/web

# Initialize backend
mkdir apps/api
cd apps/api
npm init -y

# Install Express
npm install express

# Initialize TypeScript
npx tsc --init

# Initialize Prisma
npm install prisma @prisma/client
npx prisma init

# Start PostgreSQL (Docker)
docker compose up -d postgres

# Supabase setup
supabase login
supabase init
supabase link

# Prisma migration & client generation
npx prisma migrate dev
npx prisma generate

# Clerk setup
npx clerk login
npx clerk setup

# Install remaining dependencies
npm install

# Start development
turbo dev

Enter fullscreen mode Exit fullscreen mode

AHh, thats a 30 mins with lot of pain...

For me Personally, This was a big headache to face...

So, I built Celtrix...

What is Celtrix ?

A web app scaffolder which helps you to build your own preferred stack. So you don't need to depend on various CLIs to setup your web app project.

Celtrix compromises literally every part of a web application - Frontend, Backend, Database, Provider,ORM, Package manager, Runtime env and more...

  • Celtrix helps you setup your apps in < A min.
  • The Code Arch comes with a monorepo Setup. Best for scalability.
  • Flexible among web parts.

You just need run the command:

npx celtrix@latest

Look how Celtrix works:

Celtrix gif

Celtrix is an open source project and continuously growing project.

Feedbacks and contributions are welcome.

Github | Website | Contribute | Discord

Top comments (0)