# Amharic Learning Portal
A React-based learning portal for Amharic language education with Firebase authentication and multiple learning apps.
## 🚀 Features
- **User Authentication** - Sign up, login, and password reset with Firebase
- **Protected Routes** - Secure access to learning apps
- **Multiple Learning Apps** - Alphabet tutorial, letter tracing, and more
- **Modern UI** - Clean, responsive design
- **Firebase Integration** - Authentication and Firestore database
- **Ready for Stripe** - Structure prepared for subscription payments
## 📋 Prerequisites
Before you begin, ensure you have:
- **Node.js** (v18 or higher) - Download here
- **npm** (comes with Node.js)
- **Firebase Account** - Create account here
## 🔧 Installation
### Step 1: Install Dependencies
```bash
cd amharic-learning-portal
npm install
```
### Step 2: Configure Firebase
1. Go to Firebase Console
2. Select your existing Firebase project (or create a new one)
3. Go to **Project Settings** > **General** > **Your apps**
4. Click the **Web icon** ( ) to add a web app
5. Copy your Firebase configuration
### Step 3: Add Firebase Credentials
1. Open the `.env.local` file in the project root
2. Replace the placeholder values with your actual Firebase credentials:
```env
VITE_FIREBASE_API_KEY=AIzaSyXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
VITE_FIREBASE_AUTH_DOMAIN=your-project.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your-project-id
VITE_FIREBASE_STORAGE_BUCKET=your-project.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=123456789012
VITE_FIREBASE_APP_ID=1:123456789012:web:abcdef123456
VITE_FIREBASE_MEASUREMENT_ID=G-XXXXXXXXXX
```
### Step 4: Enable Firebase Authentication
1. In Firebase Console, go to **Authentication** > **Sign-in method**
2. Enable **Email/Password** provider
3. Click **Save**
### Step 5: Create Firestore Database
1. In Firebase Console, go to **Firestore Database**
2. Click **Create database**
3. Start in **Production mode**
4. Choose your preferred region
5. Click **Enable** …