https://github.com/steellgold/simplist.blog
A headless CMS for developers.
https://github.com/steellgold/simplist.blog
fastify headless-cms nextjs postgresql prisma react typescript
Last synced: 4 months ago
JSON representation
A headless CMS for developers.
- Host: GitHub
- URL: https://github.com/steellgold/simplist.blog
- Owner: Steellgold
- License: other
- Created: 2024-04-13T21:35:21.000Z (about 2 years ago)
- Default Branch: stable
- Last Pushed: 2026-01-27T08:40:49.000Z (5 months ago)
- Last Synced: 2026-01-27T20:58:30.690Z (5 months ago)
- Topics: fastify, headless-cms, nextjs, postgresql, prisma, react, typescript
- Language: TypeScript
- Homepage: https://simplist.blog
- Size: 5.24 MB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Agents: AGENTS.md
Awesome Lists containing this project
README

A modern, full-stack blogging platform with API, dashboard, and SDK.
## Project Structure
```
simplist.blog/
├── apps/
│ ├── api/ # Fastify API server
│ ├── app/ # Next.js dashboard application
│ ├── docs/ # Documentation site
│ └── web/ # Marketing website
├── packages/
│ ├── db/ # Prisma database schema and client
│ ├── limits/ # Plan limits and types
│ ├── sdk/ # TypeScript SDK for the API
│ └── ui/ # Shared UI components (shadcn/ui)
```
## Getting Started
### Prerequisites
- Node.js 18+
- pnpm 8+
- PostgreSQL database
- Redis (optional, for caching)
### Installation
1. Clone the repository:
```bash
git clone https://github.com/Steellgold/simplist.blog.git
cd simplist.blog
```
2. Install dependencies:
```bash
pnpm install
```
3. Set up environment variables:
```bash
cp .env.example .env
# Edit .env with your configuration
```
4. Set up the database:
```bash
pnpm db:push
```
### Development
Start all applications:
```bash
pnpm dev
```
Or start individual apps:
```bash
pnpm --filter @simplist/api run dev # API (port 4000)
pnpm --filter @simplist/app run dev # Dashboard (port 3000)
pnpm --filter @simplist/docs run dev # Docs (port 3001)
pnpm --filter @simplist/web run dev # Website (port 3002)
```
## Available Scripts
### Build & Lint
```bash
pnpm build # Build all packages
pnpm lint # Lint all packages
pnpm format # Format code with Prettier
```
### Testing
```bash
cd apps/api && pnpm test # Run all tests
```
### Database
```bash
pnpm db:push # Push schema changes (dev)
pnpm db:migrate # Create and apply migrations
pnpm db:studio # Open Prisma Studio
```
## Tech Stack
- **Framework**: Next.js 16, React 19
- **API**: Fastify
- **Database**: PostgreSQL with Prisma
- **Authentication**: Better Auth
- **UI**: shadcn/ui, Tailwind CSS
- **Payments**: Stripe
- **Email**: React Email with Resend
- **Deployment**: Vercel
## Adding UI Components
To add shadcn/ui components:
```bash
pnpm dlx shadcn@latest add button -c apps/app
```
Components are shared from the `@simplist/ui` package:
```tsx
import { Button } from "@simplist/ui/components/button";
```
## Documentation
For detailed documentation, see:
- [Development Guide](./AGENTS.md)
- [API Documentation](./apps/docs/content/api/)
- [SDK Documentation](./apps/docs/content/sdk/)
## License
[Business Source License 1.1](./LICENSE.md)