patissier-practice

🍰 Patissier Practice - AI-Powered Pastry Learning Platform

A comprehensive web application for learning pastry techniques with interactive quizzes, AI visual feedback, and personalized learning paths.

✨ Features

🎯 Interactive Learning System

🧠 AI-Powered Features

πŸ“š Interactive Quizzes

🎨 Modern UI/UX

πŸš€ Live Demo

View Live Demo

πŸ› οΈ Tech Stack

πŸƒβ€β™‚οΈ Quick Start

Prerequisites

Installation

  1. Clone the repository
    git clone https://github.com/ajtruckinginc/patissier-practice.git
    cd patissier-practice
    
  2. Install dependencies
    npm install
    # or
    yarn install
    
  3. Set up environment variables
    cp .env.example .env.local
    

    Add your OpenAI API key:

    OPENAI_API_KEY=your_openai_api_key_here
    
  4. Run the development server
    npm run dev
    # or
    yarn dev
    
  5. Open your browser Navigate to http://localhost:3000

πŸ“± Usage

Getting Started

  1. Browse Techniques: Explore the technique library to find techniques you want to learn
  2. Start Learning Paths: Follow structured courses designed for your skill level
  3. Take Quizzes: Test your knowledge with interactive quizzes
  4. Upload for Feedback: Use the AI visual feedback system to get instant analysis of your creations

AI Visual Feedback

  1. Navigate to the β€œAI Visual Feedback” section
  2. Upload a photo of your pastry creation
  3. Get instant analysis with:
    • Overall quality score (0-100)
    • Detailed feedback on color, shape, texture, and technique
    • Specific improvement suggestions
    • Technique recommendations

πŸš€ Deployment

GitHub Pages Deployment

  1. Configure Next.js for GitHub Pages
    npm run build
    npm run export
    
  2. Push to GitHub
    git add .
    git commit -m "Deploy to GitHub Pages"
    git push origin main
    
  3. Enable GitHub Pages
    • Go to your repository settings
    • Navigate to β€œPages” section
    • Select β€œDeploy from a branch”
    • Choose β€œmain” branch and β€œ/ (root)” folder
    • Save and wait for deployment

πŸ§ͺ Testing

# Run all tests
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage
npm run test:coverage

πŸ“ Project Structure

patissier-practice/
β”œβ”€β”€ app/                    # Next.js app directory
β”‚   β”œβ”€β”€ api/               # API routes
β”‚   β”œβ”€β”€ globals.css        # Global styles
β”‚   └── page.tsx           # Home page
β”œβ”€β”€ components/            # React components
β”‚   β”œβ”€β”€ ui/               # Reusable UI components
β”‚   └── ...               # Feature components
β”œβ”€β”€ lib/                  # Utilities and services
β”‚   β”œβ”€β”€ contexts/         # React contexts
β”‚   β”œβ”€β”€ hooks/            # Custom hooks
β”‚   └── services/         # Business logic
β”œβ”€β”€ public/               # Static assets
└── styles/               # Additional styles

🀝 Contributing

  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

πŸ“„ License

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

πŸ™ Acknowledgments

πŸ“ž Support

If you have any questions or need help, please:


Happy Baking! 🍰✨