51 lines
3.4 KiB
Markdown
51 lines
3.4 KiB
Markdown
# Flowstate
|
|
|
|
A modern, high-performance Kanban & Workflow web application designed to help you lock in and enter the productivity flow.
|
|
|
|
[](https://git.andre-kempf.com/Chneemann/flowstate/actions)
|
|
[](https://flowstate.andre-kempf.com)
|
|

|
|

|
|

|
|

|
|

|
|

|
|

|
|

|
|
|
|
## 🛠️ Tech Stack
|
|
|
|
- **Framework:** [Next.js 16](https://nextjs.org/) (App Router, Route Groups)
|
|
- **UI & Styling:** [React 19](https://react.dev/), [Tailwind CSS v4](https://tailwindcss.com/)
|
|
- **Authentication:** [Auth.js v5 (NextAuth)](https://authjs.dev/) with Credentials Provider & bcrypt hashing
|
|
- **Database & ORM:** [PostgreSQL](https://www.postgresql.org/) managed via [Drizzle ORM](https://orm.drizzle.team/) & Drizzle Kit (Studio included)
|
|
- **DevOps & Infrastructure:** Docker & Docker Compose, Caddy Reverse Proxy, Forgejo Actions (CI/CD Automated Deployment)
|
|
|
|
## 📂 Architecture & Structure
|
|
|
|
The project uses Next.js Route Groups to separate public and protected application areas cleanly:
|
|
|
|
- `.forgejo/workflows/` — Automated SSH deployment pipeline (`deploy.yml`)
|
|
- `app/(auth)/` — Public authentication routes (Login, Register)
|
|
- `app/(app)/` — Protected workspace & dashboard routes (Sidebar, Header, Kanban Board)
|
|
- `app/api/` — Backend API endpoints & Auth handlers (`/api/auth/register`, `[...nextauth]`)
|
|
- `db/` — Database schema definitions, migrations, and Drizzle configuration (`drizzle.config.ts`)
|
|
- `lib/` — Centralized core logic folder containing:
|
|
- `actions/` — Server Actions (e.g., authentication actions)
|
|
- `schemas/` — Zod validation schemas
|
|
- `services/` — Business logic layers and external API integration services
|
|
- `types/` — Global TypeScript interfaces and type definitions
|
|
- `utils/` — Shared helper functions and formatters
|
|
- `public/` — Static assets (images, icons, fonts)
|
|
|
|
## 🚀 CI/CD & Deployment
|
|
|
|
Deployments are fully automated using **Forgejo Actions** and SSH:
|
|
|
|
1. **Automated Trigger:** Pushes to the `main` branch trigger the SSH deployment workflow.
|
|
2. **Database Schema Sync:** Migrations are applied in milliseconds using `drizzle-kit push` executed directly inside the active `flowstate-studio` container.
|
|
3. **Zero-Downtime Container Rebuild:** Rebuilds production Docker images (`flowstate`) without disrupting live database volumes.
|
|
|
|
## 🎯 Current Status
|
|
|
|
_In Progress_ — Core layout structure, responsive navigation, PostgreSQL database integration via Drizzle ORM, full authentication (Auth.js v5), and an automated production CI/CD deployment pipeline are fully operational.
|