An open source application built to inform and mobilize Haitians.
This project as an experiment to see how we can mobilize Haitains to engage in civics. The starting point of the app was forked form an OSS Next.js project called Taxonmy. The base fork provided features like authentication, subscriptions, API routes, static pages for docs ...etc.
Warning This app is forked from a base that uses the unstable releases for Next.js 13 and React 18. These features are now available in Next.js 14 and we should at some point consider doing a migration. Expect some performance hits when testing the dashboard (The dashboard part of the app is not yet being used.).
- New
/app
dir, - Routing, Layouts, Nested Layouts and Layout Groups
- Data Fetching, Caching and Mutation
- Loading UI
- Route handlers
- Metadata files
- Server and Client Components
- API Routes and Middlewares
- Authentication using NextAuth.js
- ORM using Prisma
- Database on PlanetScale
- UI Components built using Radix UI
- Documentation and blog using MDX and Contentlayer
- Subscriptions using Stripe
- Styled using Tailwind CSS
- Validations using Zod
- Written in TypeScript
- i18n ready
- Planned Features
- []
- Preloaded Features
-
Add MDX support for basic pages -
Build marketing pages -
Subscriptions using Stripe -
Responsive styles -
Add OG image for blog using @vercel/og - Dark mode
-
A list of things not working right now:
GitHub authentication (use email)Prisma: Error: ENOENT: no such file or directory, open '/var/task/.next/server/chunks/schema.prisma'Next.js 13: Client side navigation does not update head- Cannot use opengraph-image.tsx inside catch-all routes
- Install dependencies using pnpm:
npm install
- Copy
.env.example
to.env.local
and update the variables.
cp .env.example .env.local
- Start the development server:
npm run dev
Licensed under the MIT license.