Logo Lanfrica

ydroberts/amharic-learning-portal

Domain:

natural language processingeducation

Record type:

software
Creator:
ydr
Host:
# 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** …

Languages