hello Everone!! This repository contains the source code for an AI-powered course generator application. Users can input their data, preview the course structure in real-time, and generate professional course outlines. The application features AI-generated summaries, data storage and management through Neon Postgres, and an integrated AI chatbot for assistance.
You can access the live application here.
- Interactive Form Section: Users can fill in their personal, educational, and professional details in an intuitive form.
- Live Preview: A real-time preview of the course is displayed as users input their data.
- AI-Powered Summary Generator: Integrated AI generates a professional summary for the user’s course based on the provided information.
- Course Management: Users can download, share, delete, or edit their courses at any time.
- Data Storage: User data is securely stored in Neon Postgres, ensuring seamless access and management.
- Strapi Backend: The application uses Strapi to connect the frontend with the Neon Postgres database.
- AI Chatbot: An AI chatbot powered by Gemini is available to assist users with any questions or guidance.
- React.js
- Next.js
- Tailwind CSS
- Shadcn UI components
- Clerk for authentication and authorization
- Drizzle for Postgres
- Gemini API for natural language processing
- Next.js for routing
- React Icons for UI elements
- Node.js (v18 or higher)
- npm or yarn
- Neon Postgres account
- Drizzle connected to Neon Postgres
- Clone the Repository:
git clone https://github.com/adarshpheonix2810/Ai-Course-Generator.git cd Ai-Course-Generator
- Install Dependencies: Run the following command to install all the required dependencies:
npm install
- Set Up Environment Variables: Create a
.env.local
file in the root directory and add the following:Replace the placeholders with your actual credentials.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=ck_live_1234567890 CLERK_SECRET_KEY=sk_live_1234567890 NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up NEXT_PUBLIC_GEMINI_API_KEY=your-gemini-api-key NEXT_PUBLIC_DB_CONNECTION_STRING=postgresql://username:password@host:port/database?sslmode=require NEXT_PUBLIC_FIREBASE_API_KEY=your-firebase-api-key NEXT_PUBLIC_YOUTUBE_API_KEY=your-youtube-api-key NEXT_PUBLIC_HOST_NAME=http://localhost:3000
- Run the Development Server: Start the application in development mode:
The application will be accessible at http://localhost:5173.
npm run dev
- Build for Production: To create an optimized production build:
npm run build
- Preview Production Build: To preview the production build locally:
npm run preview
- Set Up Strapi:
- Install and configure Drizzle.
- Connect it to your Neon Postgres database.
- Create the necessary APIs and endpoints to handle user data.
- Deploy Strapi: Deploy Strapi on a platform of your choice (e.g., Heroku, Vercel, or your own server).
- AI Chatbot: Ensure the Gemini API is correctly integrated by providing your API key in the .env file.
- Payment Gateways: Set up Razorpay and PayPal with the provided API keys in the .env file.
Contributions are welcome! Please fork the repository and create a pull request with your changes. Ensure that your code adheres to the project’s coding standards.
This project is licensed under the MIT License. See the LICENSE file for more details.