/eunoia

A Next.js 14 Full-stack online collaborative tool tailored for efficient project management.

Primary LanguageTypeScript

Eunoia

Introducing Eunoia! A Next.js 14 online collaborative tool created for efficient project management.

Key Features:

  • Organizations / Workspaces
  • Board creation
  • Unsplash API for random cover images
  • Activity log for entire organization
  • Board rename and delete
  • List creation
  • List rename, delete, drag & drop reorder and copy
  • Card creation
  • Card description, rename, delete, drag & drop reorder and copy
  • Card activity log
  • Board limit for every organization
  • Stripe subscription for each organization to unlock unlimited boards

Tech Stack

  • Next.js 14
  • Server Actions
  • Prisma
  • Stripe
  • Tailwind
  • ShadcnUI
  • MySQL

Prerequisites

  • Node version 18.x.x

  • npm/yarn

Clone the repository

git clone https://github.com/chrisstef/eunoia.git

Install packages

npm i

or

yarn

Setup .env file

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_URL=
NEXT_PUBLIC_CLERK_SIGN_UP_URL=
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=

DATABASE_URL=

NEXT_PUBLIC_UNSPLASH_ACCESS_KEY=

STRIPE_API_KEY=

NEXT_PUBLIC_APP_URL=

STRIPE_WEBHOOK_SECRET=

Setup Prisma

Add MySQL Database (I used PlanetScale)

npx prisma generate
npx prisma db push

Start the app

npm run dev

or

yarn dev