https://github.com/frixaco/saas-boilerplate
Boilerplate for my SaaS apps using Next.js 14, Drizzle, Railway (Postgres, API), Clerk, Turbo, Upstash, Sentry, PostHog, Shadcn
https://github.com/frixaco/saas-boilerplate
Last synced: 6 months ago
JSON representation
Boilerplate for my SaaS apps using Next.js 14, Drizzle, Railway (Postgres, API), Clerk, Turbo, Upstash, Sentry, PostHog, Shadcn
- Host: GitHub
- URL: https://github.com/frixaco/saas-boilerplate
- Owner: frixaco
- Created: 2024-04-17T08:58:23.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-07-31T17:08:41.000Z (10 months ago)
- Last Synced: 2024-08-01T02:04:15.486Z (10 months ago)
- Language: TypeScript
- Homepage:
- Size: 4.66 MB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Setup
1. Populate `.env` files in `apps/api-go`, `apps/web` with your own values
2. There's not much code. So I recommend to quickly review package.json files to see if you are fine with the libraries used. Then skim through the code and see if you want to change anything# Structure
## There are two apps: `api-go` and `web`
### The `api-go` is a simple Go API that uses [echo](https://echo.labstack.com/) framework
- `Air` for hot reloading: https://github.com/cosmtrek/air
- `godotenv` for loading environment variables: https://github.com/joho/godotenv### The `web` is a Next.js app that uses [clerk](https://clerk.com/) for authentication
- `Next.js` for the web framework
- `Clerk` for authentication
- `PostHog` for analytics
- `Sentry` for error monitoring
- `Drizzle ORM` for database access
- `Upstash` for rate limiting
- `shadcn/ui`, `Tailwind CSS`, `lucide-react` for UI components, styling and animations, icons
- `Vercel` for hosting
- and a few more... as usualTODO:
- [ ] checkout https://zsa.vercel.app/docs/react-query add React Query
- [ ] research ways to reduce usage of React Query and rely more on server actions
- [ ] checkout https://icon-sets.iconify.design/line-md/?category=Animated+Icons
- [ ] more robust error handling in web: https://nextjs.org/learn/dashboard-app/error-handling