Skip to content

Cartooli/ai-lesson-plan-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AI Lesson Generator

License: MIT Deploy with Vercel

An AI-powered tool for generating comprehensive educational lesson plans using Anthropic's Claude API. This open-source project helps educators create structured, engaging lesson plans quickly and efficiently.

πŸš€ Live Demo

Try it now: Live Demo

Note: The live demo uses shared API keys and may have rate limits. For unlimited usage, deploy your own instance with your own API key.

Features

  • πŸ€– AI-Powered Generation: Generate detailed lesson plans using advanced AI
  • πŸ“š Comprehensive Content: Create structured lessons with objectives, activities, and assessments
  • 🎯 Customizable: Tailor lessons to specific topics, grade levels, and learning objectives
  • πŸ“¦ Optional Archive System: Store and moderate generated lesson plans
  • πŸš€ Easy Deployment: Deploy to Vercel, Netlify, or other serverless platforms

Quick Start

New to Coding?

πŸ‘‰ Start here: GETTING_STARTED.md - Step-by-step guide for beginners

Already Familiar with Development?

  1. Clone the repository

    git clone https://github.com/Cartooli/ai-lesson-plan-generator.git
    cd ai-lesson-plan-generator
  2. Install dependencies

    npm install
  3. Set up environment variables

    cp .env.example .env

    Edit .env and add your Anthropic API key:

    ANTHROPIC_API_KEY=sk-ant-api03-YOUR_KEY_HERE
  4. Run locally

    npm run dev

Prerequisites

For detailed setup instructions, see SETUP.md.

Configuration

Required Environment Variables

Optional Environment Variables

  • ENABLE_ARCHIVE - Enable lesson archiving system (default: false)
  • ADMIN_PASSWORD - Admin password for moderation panel (required if ENABLE_ARCHIVE=true)
  • NODE_ENV - Environment mode: development or production (default: production)

See .env.example for a complete template with descriptions.

Deployment

Vercel (Recommended)

  1. Install Vercel CLI (optional):

    npm i -g vercel
  2. Deploy:

    vercel
  3. Set environment variables in Vercel dashboard:

    • Go to Settings β†’ Environment Variables
    • Add all variables from your .env file
  4. Redeploy after adding environment variables

Other Platforms

  • Netlify: Connect GitHub repo, set build settings, add environment variables
  • Railway: Connect GitHub repo, add environment variables, deploy
  • Other serverless platforms: Follow platform-specific deployment guides

See SETUP.md for detailed deployment instructions.

Documentation

For Beginners

For Developers

Features in Detail

Lesson Generation

Generate comprehensive lesson plans by providing:

  • Topic or subject
  • Grade level
  • Learning objectives
  • Duration

The AI creates structured lesson plans with:

  • Learning objectives
  • Materials needed
  • Step-by-step activities
  • Assessment methods
  • Extension activities

Archive System (Optional)

When enabled, the archive system allows you to:

  • Store generated lesson plans
  • Moderate content through admin panel
  • Organize lessons by topic or date

Security Note: Use a strong password for the admin panel if enabling this feature.

Development

Project Structure

ai-lesson-generator/
β”œβ”€β”€ .github/          # GitHub workflows and templates
β”œβ”€β”€ api/              # Serverless API functions
β”œβ”€β”€ js/               # Frontend JavaScript
β”œβ”€β”€ blog/             # Blog content
β”œβ”€β”€ lessons-archive/  # Generated content (gitignored)
β”œβ”€β”€ *.html            # Frontend pages
└── [config files]    # Configuration files

Running Locally

# Install dependencies
npm install

# Set up environment
cp .env.example .env
# Edit .env with your API key

# Run development server
npm run dev

Testing

  • Test lesson generation with valid API key
  • Verify error handling with missing/invalid keys
  • Test archive system (if enabled)

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add: amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Security

  • Never commit .env files - They contain sensitive API keys
  • Use strong passwords - Especially for admin panels
  • Rotate API keys regularly - If compromised
  • Monitor API usage - Check for unexpected activity

See SECURITY.md for our security policy and best practices.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Support

Roadmap

  • Enhanced lesson plan templates
  • Multi-language support
  • Export to PDF/DOCX
  • Integration with LMS platforms
  • User authentication system
  • Lesson plan sharing

Made with ❀️ for educators worldwide

About

No description, website, or topics provided.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors