TechIndustry

TechIndustry is a scalable, production-ready web platform for IT education, skill development, and automated knowledge assessment. The project is designed with a strong focus on clean architecture, performance, and real-world learning workflows.


Overview

TechIndustry provides a modern Learning Management System (LMS) that enables users to study structured IT courses, track progress in real time, and receive certificates upon course completion. The platform supports both authenticated users and guests, ensuring an accessible entry point while preserving full functionality for registered learners.


Technologies

The platform is built using a robust and maintainable technology stack:

Performance & Security


Screenshots

Home Page

Main landing page with platform overview and featured courses. Home Page

Course Catalog

Browse all available courses and learning tracks. Course Catalog

Course View

Detailed course structure with modules and lessons. Course View

User Profile

Personal dashboard with progress, statistics, and achievements. User Profile

User Profile Extended

User Profile Extended

Leaderboard & Achievements

Top users, ranking system, and gamification stats. Leaderboard

Quiz & Testing System

Interactive quiz center and module tests. Quiz Courses

Quiz View

Q&A / Knowledge Section

Additional learning and knowledge validation. Q&A

Learning Roadmaps

Structured learning paths and skill progression. Roadmap

Shop & Profile Customization

Cosmetics, rewards, and coin-based economy. Shop

Code Sandbox

Built-in coding playground for experimentation. Sandbox


Core Features

Learning Management System (LMS)

User Progress Tracking

Automated Assessment

Gamification & Economy

Profile Customization (Shop / Inventory)

Code Sandbox

Certification System

Authentication & Access Control


Frontend Behavior


Repository Structure


Getting Started

Prerequisites

Installation

  1. Clone the repository:
git clone https://github.com/polchduikt/TechIndustry.git
cd TechIndustry
  1. Install dependencies:
npm install express cookie-parser dotenv jsonwebtoken express-validator multer sequelize
  1. Configure environment variables:

Create a .env file in the project root and define:

PORT=port
DB_HOST=host
DB_PORT=db_port
DB_NAME=your_db_name
DB_USER=your_user
DB_PASSWORD=password
JWT_SECRET=secret_key
EMAIL_USER=your_email
EMAIL_PASSWORD=password
GROQ_API_KEY=key
GOOGLE_CLIENT_ID=your_client_id
GOOGLE_CLIENT_SECRET=you_client_secret
GOOGLE_CALLBACK_URL=callback_url
NODE_ENV=development
  1. Run database migrations and start the server:
npm run dev

API Highlights

Public APIs (No Authentication Required)

Authentication

Courses & Roadmaps

Quizzes & Assessments

Protected APIs (Authentication Required)

Profile Management

Learning Progress

Certificates


Project Status

The project is actively developed and continuously improved. Current priorities include performance optimization, extended analytics, and enhanced assessment logic.


License

This project is licensed under the MIT License.