It was a fast site for capturing leads from marketing campaigns and selling online courses. The data was stored in a headless CMS, and the pages were statically generated (SSG) for optimal performance and SEO.
Now, it is being rewritten as a platform for watching online courses and selling digital assets (PDF).
The app and content are only available in Portuguese-BR, as the audience is from Brazil.
- Allow users to watch courses with embedded YouTube videos
- Track user progress on watching lessons
- Allow users to download digital assets (PDF) related to each course.
- Allow selling digital assets related to each course, integrated with Stripe
- Build a landing page
- Have an admin area to create courses and lessons, upload digital assets, etc.
- Have a dashboard with indicators like the number of active users, revenue, most watched courses, most downloaded assets
- React
- Next.js
- Typescript
- TailwindCSS
- Shadcn UI components
- Clerk authentication
- Redux-Toolkit Query
- Prisma ORM
- MongoDB Atlas
- AWS S3
- Stripe
- GitHub Actions
- Vite, Prettier, Eslint
Copy .env.template
to .env.local
and configure all the environment variables.
First, run the development server:
$ npm install
$ npm run dev
Open http://localhost:3000 with your browser to see the result.