Skip to content

Trishix/Stringz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

85 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽธ Stringz - Master the Guitar

Master the art of guitar with premium video courses from world-class instructors.

Stringz is a modern, full-stack E-learning platform designed for guitar enthusiasts. From beginner chords to advanced solos, Stringz offers a seamless learning experience with high-quality video lessons, progress tracking, and secure payments.


๐Ÿš€ Live Demo

Service URL Status
Frontend https://stringz-lijo.vercel.app Vercel
Backend https://stringz.onrender.com Render
Database MongoDB Atlas MongoDB

โœจ Features

  • ๐ŸŽฅ High-Quality Video Lessons: Stream 4K lessons with an integrated video player.
  • ๐Ÿ” Secure Authentication: JWT-based login/signup with role-based access control (Student/Admin).
  • ๐Ÿ’ณ Seamless Payments: Integrated Razorpay for secure and easy course purchases.
  • ๐Ÿ“Š Student Dashboard: Track your purchased courses and learning progress.
  • ๐Ÿ›  Admin Panel: Manage lessons, upload videos, and view sales analytics.
  • ๐ŸŽจ Modern UI/UX: Fully responsive, dark-themed design with glassmorphism effects and smooth animations.

๐Ÿ›  Tech Stack

Frontend

  • React.js: Component-based UI architecture.
  • Tailwind CSS: Utility-first styling for a rapid, responsive design.
  • Framer Motion: Smooth animations and transitions.
  • Lucide React: Beautiful, consistent icons.
  • Vite: Blazing fast build tool.

Backend

  • Node.js & Express: Robust and scalable server-side runtime.
  • MongoDB & Mongoose: Flexible NoSQL database with schema modeling.
  • JWT (JSON Web Tokens): Secure stateless authentication.
  • Cloudinary: Optimization and storage for lesson videos and thumbnails.
  • Razorpay: Payment gateway integration.

โš™๏ธ Installation & Setup

Follow these steps to run the project locally.

Prerequisites

  • Node.js (v16+)
  • MongoDB (Local or Atlas)

1. Clone the Repository

```bash git clone https://github.com/your-username/stringz.git cd stringz ```

2. Backend Setup

```bash cd BACKEND npm install ``` Create a `.env` file in the `BACKEND` directory: ```env PORT=4000 MONGODB_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret CLOUDINARY_CLOUD_NAME=your_cloud_name CLOUDINARY_API_KEY=your_api_key CLOUDINARY_API_SECRET=your_api_secret RAZORPAY_KEY_ID=your_razorpay_id RAZORPAY_KEY_SECRET=your_razorpay_secret FRONTEND_URL=http://localhost:5173 ``` Start the server: ```bash npm start ```

3. Frontend Setup

```bash cd ../FRONTEND npm install ``` Create a `.env` file in the `FRONTEND` directory: ```env VITE_API_URL=http://localhost:4000/api VITE_RAZORPAY_KEY_ID=your_razorpay_id ``` Start the development server: ```bash npm run dev ```


๐Ÿงช Testing

The project is equipped with unit and integration tests for both frontend and backend.

Backend Tests

Run the comprehensive backend test suite (StudentService, ReviewService, etc.):

cd BACKEND
npm test

Frontend Tests

Run component tests:

cd FRONTEND
npm test

CI/CD Pipeline

  • GitHub Actions: Automatically lints, builds, and tests both Frontend and Backend on every push to main.
  • Infrastructure: Backend Dockerfile provided for containerized deployment.

THANK YOU

About

๐ŸŽธ Stringz is a full-stack guitar E-learning platform featuring JWT authentication, Razorpay payments, Cloudinary-hosted video lessons, role-based access (Student/Admin), progress tracking, and an admin dashboard. Built with React, Tailwind CSS, Node.js, Express, and MongoDB for scalability and performance.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors