Skip to content

Online coding platform with live classes & recorded courses. Master Python, ML, and Web Dev with hands-on projects. Built with React, Django & PostgreSQL

License

Notifications You must be signed in to change notification settings

farzadasgari/CodeSkillz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CodeSkillz

License: MIT Live Demo Stars Forks

Python Django React TypeScript Tailwind CSS

πŸ“– About

CodeSkillz is a modern, full-featured online coding education platform that offers both live classes via Google Meet and recorded on-demand courses. Built with React and TypeScript, this platform provides an engaging learning experience for students looking to master programming skills.

✨ Features

πŸŽ₯ Learning Options

  • Live Classes - Interactive sessions via Google Meet with real-time Q&A
  • Recorded Courses - On-demand video content for self-paced learning
  • Course Assignments - Hands-on coding projects and exercises

πŸ‘€ User Experience

  • User Dashboard - Track progress, manage enrollments, and view achievements
  • Course Catalog - Browse and filter available courses
  • Progress Tracking - Monitor your learning journey with detailed analytics
  • Achievements System - Earn badges and rewards for milestones

🌐 Internationalization

  • Multi-language Support - Full i18n implementation with language switcher
  • RTL Support - Right-to-left layout support for languages like Persian/Arabic

πŸ“± Modern UI/UX

  • Responsive Design - Fully optimized for desktop, tablet, and mobile
  • Dark/Light Themes - Theme switching with next-themes
  • Accessible Components - Built with Radix UI primitives for accessibility
  • Smooth Animations - Polished animations with Tailwind CSS

πŸ“ Content & Community

  • Blog System - Educational articles and tutorials
  • FAQ Section - Searchable frequently asked questions
  • Newsletter Signup - Stay updated with new courses and content
  • Contact Form - Easy communication channel

πŸ› οΈ Tech Stack

Frontend

Technology Purpose
React 18 UI Library
TypeScript Type Safety
Vite Build Tool & Dev Server
React Router DOM Client-side Routing
TanStack Query Server State Management

Backend

Technology Purpose
Python Backend Language
Django Web Framework
Django REST Framework RESTful API
PostgreSQL Relational Database

Styling

Technology Purpose
Tailwind CSS Utility-first CSS
Radix UI Accessible UI Primitives
Lucide React Icon Library
tailwindcss-animate Animations

Form & Validation

Technology Purpose
React Hook Form Form Management
Zod Schema Validation

Internationalization

Technology Purpose
i18next Internationalization Framework
react-i18next React Integration
i18next-browser-languagedetector Auto Language Detection

Other Libraries

Technology Purpose
Recharts Data Visualization
date-fns Date Utilities
Sonner Toast Notifications
Embla Carousel Carousel Component

πŸ“ Project Structure

CodeSkillz/
β”œβ”€β”€ public/                 # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/            # Images and media files
β”‚   β”œβ”€β”€ components/        # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ ui/           # Radix UI-based primitives
β”‚   β”‚   β”œβ”€β”€ Header.tsx
β”‚   β”‚   β”œβ”€β”€ Footer.tsx
β”‚   β”‚   β”œβ”€β”€ CourseCard.tsx
β”‚   β”‚   β”œβ”€β”€ BlogCard.tsx
β”‚   β”‚   β”œβ”€β”€ LanguageSwitcher.tsx
β”‚   β”‚   └── ... 
β”‚   β”œβ”€β”€ contexts/          # React Context providers
β”‚   β”œβ”€β”€ data/              # Static data and mock content
β”‚   β”œβ”€β”€ hooks/             # Custom React hooks
β”‚   β”œβ”€β”€ i18n/              # i18n configuration
β”‚   β”œβ”€β”€ lib/               # Utility functions
β”‚   β”œβ”€β”€ locales/           # Translation files
β”‚   β”œβ”€β”€ pages/             # Page components
β”‚   β”‚   β”œβ”€β”€ Home.tsx
β”‚   β”‚   β”œβ”€β”€ Courses.tsx
β”‚   β”‚   β”œβ”€β”€ CourseDetail.tsx
β”‚   β”‚   β”œβ”€β”€ Dashboard.tsx
β”‚   β”‚   β”œβ”€β”€ Blog.tsx
β”‚   β”‚   β”œβ”€β”€ About.tsx
β”‚   β”‚   β”œβ”€β”€ Contact.tsx
β”‚   β”‚   β”œβ”€β”€ Auth.tsx
β”‚   β”‚   β”œβ”€β”€ FAQ.tsx
β”‚   β”‚   └── ... 
β”‚   β”œβ”€β”€ App.tsx            # Main application component
β”‚   β”œβ”€β”€ main.tsx           # Application entry point
β”‚   └── index.css          # Global styles
β”œβ”€β”€ package.json
β”œβ”€β”€ tailwind.config.ts
β”œβ”€β”€ vite.config. ts
β”œβ”€β”€ tsconfig.json
└── README.md

πŸš€ Getting Started

Prerequisites

  • Node.js >= 18.0.0
  • npm >= 9.0.0 (or Bun)

Installation

  1. Clone the repository

    git clone https://github.com/farzadasgari/CodeSkillz. git
    cd CodeSkillz
  2. Install dependencies

    npm install
    # or with Bun
    bun install
  3. Start the development server

    npm run dev
  4. Open your browser Navigate to http://localhost:8080

Available Scripts

Command Description
npm run dev Start development server
npm run build Build for production
npm run preview Preview production build
npm run lint Run ESLint
npm run format Format code with Prettier

🌍 Deployment

The project is configured for GitHub Pages deployment. The live version is available at:

πŸ”— https://farzadasgari.github.io/CodeSkillz/

To deploy your own instance:

npm run build

The build output will be in the dist/ directory, ready for deployment to any static hosting service.

🀝 Contributing

Contributions are welcome! Please read our Code of Conduct before contributing.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ”’ Security

For security concerns, please review our Security Policy.

πŸ“„ License

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

πŸ“¨ Contact

If you have any questions or suggestions regarding CodeSkillz, feel free to contact us at khufarzadasgari@gmail.com or std_farzad.asgari@khu.ac.ir.

πŸ”— Links

Portfolio

Google Scholar

ResearchGate

LinkedIn

X


⭐ Support & Donations

If you find CodeSkillz useful, please consider supporting development:

πŸ’Έ Crypto Donations

  • Bitcoin: bc1qxd8um2jre6xz4je64uhar9eh9uzu9yrvzh08sm
  • Ethereum: 0xCc8693060409263F68e37f75f76d519c19B2bAdE
  • USDT (TRC20): TLL9ou7PahrNob2GEppV3o4e5B9vYqgsJN

🌐 Donate via CoinDrop

Coindrop.to me


Made with ❀️ by FarZad

About

Online coding platform with live classes & recorded courses. Master Python, ML, and Web Dev with hands-on projects. Built with React, Django & PostgreSQL

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages