hackquest logo

TrackEd

AI-powered learning platform that generates personalized courses with a sleek, responsive Next.js UI.

视频

描述

TrackEd: Online Course Platform (Next.js + TypeScript + Tailwind CSS)

This is a full-stack online course platform built with:

  • Next.js (App Router)

  • TypeScript

  • Tailwind CSS (for styling)

  • PostgreSQL (via Neon DB)

  • NextAuth.js (for authentication)

  • Google OAuth, Stripe, YouTube API, Gemini AI, Unsplash

Key Features:

User Authentication

  • Google OAuth login via NextAuth.js

  • Session management with NEXTAUTH_SECRET

Course Management

  • Create, view, and manage online courses

  • Rich content support (text, images, videos)

Payment Integration

  • Stripe API for handling payments

AI-Powered Features

  • Gemini API for AI-generated course suggestions or chatbots

Media Integration

  • YouTube API for embedding course videos

  • Unsplash for high-quality course thumbnails

UI/UX Features

  • Toggle Theme (Dark/Light Mode)

  • Clean, responsive design with Tailwind CSS

  • Smooth animations and transitions

Database

  • PostgreSQL hosted on Neon DB

本次黑客松进展

Day 1: Initial Setup and Early Challenges The project began with the creation of a Next.js application using TypeScript and Tailwind CSS for styling. The initial focus was on setting up the basic structure, including a navigation bar, course card layout, and footer. Authentication was implemented using NextAuth.js with Google OAuth, allowing users to sign in seamlessly. However, several challenges emerged during this phase. The OpenAI API initially chosen for AI-powered features proved problematic due to rate limits and inconsistent response formatting, prompting a switch to the Gemini API, which offered better documentation and a more straightforward integration. The YouTube API also caused issues, primarily due to quota restrictions and CORS errors, which were resolved by handling requests through Next.js server-side API routes. Additionally, the gallery section faced layout problems, with divs misaligning or overflowing. This was fixed by refining the Tailwind CSS grid utilities and applying custom breakpoints for a responsive design. Day 2: UI Refinements and MVP Completion The second day focused on enhancing the user interface and stabilizing the core functionalities. The UI was significantly improved with the addition of a dark/light theme toggle, achieved using either next-themes or a custom Context API solution, ensuring a consistent and user-friendly experience across different preferences. Responsive design was further polished with mobile-first Tailwind classes, ensuring the app looked great on all devices. The Gemini API integration was completed successfully, replacing OpenAI entirely and providing reliable AI-generated course recommendations. The YouTube API issues were fully resolved, with video embeds now working smoothly thanks to server-side fetching and response caching. By the end of the day, the minimum viable product (MVP) was finalized, featuring user authentication via Google OAuth, a functional course gallery with search and filtering capabilities, and a test-ready Stripe payment flow. Next Steps and Future Goals With the MVP now stable, the next phase of development will focus on backend enhancements, such as tracking user progress within courses and implementing Stripe webhooks for subscription management. UI/UX improvements, including loading skeletons for API-heavy sections and smoother theme transitions, are also planned. Additional features like an admin dashboard for course creation and a user review system will further enrich the platform, making it more interactive and comprehensive.

技术栈

React
Node
Next
JS
NeonDB
赛道
AIOther