Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

LearnWave - E-Learning Platform

Prerequisites

Before running the project, ensure you have the following installed:

  1. Python (v3.8 or higher)
  2. Node.js (v16 or higher)
  3. PostgreSQL (Database)

Step 1: Database Setup

  1. Open your PostgreSQL tool (pgAdmin or command line).
  2. Create a new database named elearning.
    CREATE DATABASE elearning;
  3. Ensure you have a user (e.g., postgres) with a password. You will need these credentials for the backend setup.

Step 2: Backend Setup

  1. Navigate to the backend folder:

    cd backend
  2. Create a virtual environment:

    python -m venv venv
  3. Activate the virtual environment:

    • Windows: .\venv\Scripts\activate
    • Mac/Linux: source venv/bin/activate
  4. Install dependencies:

    pip install -r requirements.txt
  5. Configure Database:

    • Open app/database.py (or set an environment variable DATABASE_URL).
    • The default connection string is: postgresql://postgres:zain1234@localhost:5432/elearning
    • If your PostgreSQL password or username is different, update it in app/database.py or create a .env file with:
      DATABASE_URL=postgresql://YOUR_USER:YOUR_PASSWORD@localhost:5432/elearning
      
  6. Run the Server:

    uvicorn app.main:app --reload
    • The backend will start at http://localhost:8000.
    • It will automatically create the necessary database tables on the first run.

Step 3: Frontend Setup

  1. Open a new terminal and navigate to the frontend folder:

    cd frontend
  2. Install dependencies:

    npm install
  3. Run the Application:

    npm run dev
    • The frontend will start at http://localhost:5173 (or similar).

Step 4: Using the App

  1. Open your browser and go to the frontend URL.
  2. Register a new account (since the database is fresh, there are no users).
  3. You can register as a student or instructor and start creating/viewing courses.

About

LeranWave-Final Web Technologies Project. Here are the complete files of the project.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors