Skip to content

pratik20gb/js4all

Repository files navigation

JS4All - Your Complete JavaScript Learning Hub

JS4All Logo

Master JavaScript with curated resources, interactive quizzes, and comprehensive roadmaps

🌐 Live Website β€’ πŸ“– Documentation β€’ 🐦 Twitter

License: MIT TypeScript React Vite Website

πŸš€ Overview

JS4All is a comprehensive JavaScript learning platform designed to help developers master JavaScript from fundamentals to advanced topics. The platform combines curated resources, interactive quizzes, and structured learning roadmaps to provide an all-in-one learning experience.

🌐 Live at: https://js4all.site

⚑ Quick Start

  1. Visit the live site: js4all.site
  2. Explore resources: Browse curated documentation, books, and courses
  3. Take a quiz: Test your knowledge with interactive quizzes
  4. Follow the roadmap: Learn step-by-step from basics to advanced

Or clone and run locally:

git clone https://github.com/pratik20gb/js4all.git
cd js4all
npm install
npm run dev

✨ Features

πŸ“š Curated Resources

  • Best-in-class documentation - Direct links to MDN Web Docs and other authoritative sources
  • Recommended books - Carefully selected JavaScript books for all skill levels
  • Video courses - Top-rated courses from leading platforms
  • Tools & utilities - Essential development tools and libraries
  • Bento grid layout - Beautiful, modern presentation of resources

🧩 Interactive Quizzes

  • Multiple difficulty levels - Easy, Medium, and Hard questions
  • Flexible question sets - Choose from 10, 20, or 30 questions
  • Detailed explanations - Comprehensive explanations for every answer
  • Real-time feedback - Instant results and performance tracking

πŸ—ΊοΈ Learning Roadmap

  • Structured learning path - Step-by-step guide from basics to advanced
  • Career paths - Specialized tracks for different JavaScript careers
  • Library recommendations - Popular libraries and frameworks
  • Prerequisites & next steps - Clear learning dependencies

🎨 Modern UI/UX

  • Responsive design - Works seamlessly on all devices
  • Smooth animations - Powered by Framer Motion
  • Dark mode support - Easy on the eyes
  • Loading screen - Professional loading experience

πŸ› οΈ Technologies

This project is built with modern web technologies:

πŸ“¦ Installation

Prerequisites

  • Node.js (v18 or higher recommended)
  • npm or yarn or pnpm

Setup

  1. Clone the repository:

    git clone https://github.com/pratik20gb/js4all.git
    cd js4all
  2. Install dependencies:

    npm 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 the development server
npm run build Build for production
npm run build:dev Build in development mode
npm run preview Preview the production build
npm run lint Run ESLint for code quality

πŸ“ Project Structure

js4all/
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ js4all.jpg          # Project logo
β”‚   β”œβ”€β”€ sagelogo.png        # Favicon
β”‚   └── robots.txt          # SEO configuration
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/         # React components
β”‚   β”‚   β”œβ”€β”€ ui/            # shadcn/ui components
β”‚   β”‚   β”œβ”€β”€ Header.tsx     # Navigation header
β”‚   β”‚   β”œβ”€β”€ Footer.tsx     # Site footer
β”‚   β”‚   β”œβ”€β”€ LoadingScreen.tsx  # Loading animation
β”‚   β”‚   └── ...
β”‚   β”œβ”€β”€ data/              # Static data
β”‚   β”‚   β”œβ”€β”€ quizQuestions.ts
β”‚   β”‚   β”œβ”€β”€ resources.ts
β”‚   β”‚   └── roadmap.ts
β”‚   β”œβ”€β”€ pages/             # Page components
β”‚   β”‚   β”œβ”€β”€ Index.tsx      # Home page
β”‚   β”‚   β”œβ”€β”€ Quiz.tsx       # Quiz page
β”‚   β”‚   β”œβ”€β”€ Roadmap.tsx    # Roadmap page
β”‚   β”‚   └── NotFound.tsx   # 404 page
β”‚   β”œβ”€β”€ hooks/             # Custom React hooks
β”‚   β”œβ”€β”€ lib/               # Utility functions
β”‚   β”œβ”€β”€ App.tsx            # Main app component
β”‚   β”œβ”€β”€ main.tsx           # Application entry point
β”‚   └── index.css          # Global styles
β”œβ”€β”€ index.html             # HTML template
β”œβ”€β”€ package.json           # Dependencies
β”œβ”€β”€ tsconfig.json          # TypeScript config
β”œβ”€β”€ vite.config.ts         # Vite configuration
└── tailwind.config.ts     # Tailwind CSS config

🚒 Deployment

The project is deployed and live at js4all.site using Vercel with a custom domain.

Vercel (Recommended)

npm run build
vercel deploy

Custom Domain Setup:

  • Domain: js4all.site
  • Configured via Vercel dashboard
  • Automatic HTTPS enabled
  • See DOMAIN_SETUP.md for detailed setup instructions

Netlify

npm run build
# Deploy the `dist` folder

GitHub Pages

npm run build
# Deploy the `dist` folder to gh-pages branch

Docker

FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
EXPOSE 8080
CMD ["npm", "run", "preview"]

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  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

πŸ“ License

This project is open source and available under the MIT License.

πŸ‘¨β€πŸ’» Author

Pratik Raj (sage)

πŸ™ Acknowledgments

  • MDN Web Docs - For comprehensive JavaScript documentation
  • shadcn - For the beautiful component library
  • All the contributors and maintainers of the open-source libraries used in this project


Made with ❀️ by Pratik Raj

Visit JS4All β€’ Follow on X β€’ Star on GitHub

About

JS4All - Your Complete JavaScript Learning Hub

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages