Skip to content

Arjunms757/CourseCart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

📚 CourseCart - Online Course Platform

CourseCart is a modern e-learning platform that allows users to browse and purchase online courses. It features a robust Angular frontend and a secure Django REST Framework backend.

📋 Table of Contents

✨ Features

  • 🔐 JWT Authentication: Secure user authentication and authorization
  • 🔐 User Authentication: Secure login and registration with OTP verification
  • 📖 Course Browsing: View available courses with detailed information
  • 🛒 Cart Management: Add courses to cart and manage your wishlist
  • 💳 Payments: Integrated Razorpay payment gateway for secure transactions
  • 🎓 My Courses: Access and track your purchased courses
  • 📱 Responsive Design: Seamless experience across all devices

🛠️ Tech Stack

Frontend

  • Angular 15
  • TypeScript
  • HTML5 & CSS3

Backend

  • Python 3
  • Django 4
  • Django REST Framework

Database

  • PostgreSQL

Payment Gateway

  • Razorpay

📁 Project Structure

CourseCart/
├── COURSES/              # Django Backend Application
│   ├── manage.py
│   ├── req.txt
│   └── ...
├── CourseCart/           # Angular Frontend Application
│   ├── src/
│   ├── angular.json
│   ├── package.json
│   └── ...
└── README.md

📦 Prerequisites

Ensure you have the following installed on your system:

  • Node.js (v14 or higher) & npm
  • Python (v3.8 or higher)
  • PostgreSQL Database

🚀 Backend Setup (Django)

1. Navigate to the backend directory

cd COURSES

2. Create and activate a virtual environment (recommended)

Windows:

python -m venv myenv
myenv\Scripts\activate

macOS/Linux:

python3 -m venv myenv
source myenv/bin/activate

3. Install dependencies

pip install -r req.txt

4. Database Configuration

Install PostgreSQL (if not already installed):

Ubuntu/Debian:

sudo apt-get install postgresql postgresql-contrib

Create Database and User:

sudo -u postgres psql

Run the following SQL commands:

CREATE ROLE admin WITH LOGIN PASSWORD 'testpass';
ALTER USER admin WITH SUPERUSER;
\q

Create the database:

createdb -U admin -h localhost COURSECART

Ensure your PostgreSQL server is running and update database settings:

- Edit `TECH_BACKEND/settings.py` or create a `.env` file
- Configure your database credentials:

```python
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'COURSECART',
        'USER': 'ADMIN',
        'PASSWORD': 'testpass',
        'HOST': 'localhost',
        'PORT': '5432',
    }
}

### 5. Run Migrations

```bash
python manage.py makemigrations
python manage.py migrate

6. Start the Development Server

python manage.py runserver

The backend API will be available at http://localhost:8000


💻 Frontend Setup (Angular)

1. Navigate to the frontend directory

cd CourseCart

2. Install Dependencies

npm install

3. Start the Development Server

npm start

or

ng serve

4. Access the Application

Open your browser and navigate to http://localhost:4200


🎯 Usage

  1. Register/Login: Create a new account or login with existing credentials
  2. Browse Courses: Explore available courses on the platform
  3. Add to Cart: Select courses and add them to your cart
  4. Checkout: Complete purchase using Razorpay payment gateway
  5. Access Courses: View your purchased courses in "My Courses" section

📄 License

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

About

Coursecart - Online Course Purchase Portal

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors