Packages
The carefully chosen dependencies that power Catalyst — modern, stable, and AI-friendly.
Read this when you want to understand why Catalyst uses specific packages.
Useful for developers evaluating Catalyst or deciding on package upgrades.
Why Packages Matter
Every dependency is a decision. Catalyst chooses packages that are widely adopted, well-documented, and stable — because AI agents work better with popular tools that have extensive training data.
We avoid exotic dependencies, custom wrappers, and bleeding-edge libraries. The goal is a stack that's boring in the best way: predictable, maintainable, and easy for both humans and AI to understand.
Selection Criteria
How we choose what goes in Catalyst:
Widely adopted
Popular packages have more training data. AI agents understand Next.js better than obscure alternatives.
Well documented
Good docs help everyone. Clear documentation means faster onboarding for humans and AI alike.
Stable & maintained
Avoid breaking changes. We prefer mature packages over cutting-edge experiments.
Core Packages
The foundation of every Catalyst project:
Next.js
15.xReact framework for production. App Router, Server Components, and API routes.
Tailwind CSS
4.xUtility-first CSS framework. v4 with CSS variables and modern features.
shadcn/ui
latestAccessible UI components you own. Copy-paste, not a dependency.
Supabase
2.xPostgres database with auth, storage, and realtime. Your backend in a box.
How They Work Together
UI Layer
shadcn/ui + Tailwind CSS
Components styled with utility classes and CSS variables
Framework
Next.js 15
Routing, rendering, and API endpoints
Backend
Supabase
Database, auth, storage, and realtime
Each layer is replaceable. Use Tailwind without shadcn, swap Supabase for another backend, or deploy to any platform that supports Next.js.
Catalyst packages are mainstream by design. When you search Stack Overflow, read blog posts, or ask an AI for help, you'll find answers. That's the point — a stack that works with the ecosystem, not against it.
Supporting Packages
TypeScript
Type safety and editor intelligence
Catches errors early, improves AI code generation
Lucide React
Icon library
Consistent icons, tree-shakeable, works with shadcn
class-variance-authority
Component variants
Type-safe variant props for shadcn components
clsx + tailwind-merge
Class name utilities
Merge Tailwind classes without conflicts
next-themes
Dark mode
SSR-safe theme switching
Recharts
Charts and graphs
React-native charting, good defaults
What's Not Included
Catalyst deliberately excludes some common packages:
State management (Redux, Zustand)
React state + URL state covers most cases. Add when needed.
Form libraries
Built-in form handling works. react-hook-form is easy to add.
Animation libraries
CSS transitions + Tailwind animations. Add Framer Motion for complex cases.
Testing frameworks
Add Vitest/Jest based on your testing strategy.
Next Steps
Learn about specific packages: