Skip to content

Latest commit

Β 

History

History
62 lines (44 loc) Β· 1.46 KB

File metadata and controls

62 lines (44 loc) Β· 1.46 KB

πŸ“¦ Stackit

A Stack Overflow–style Q&A web application built using Node.js, Express, EJS, and MySQL, with clean and responsive frontend using HTML, CSS, and JavaScript.


✨ Features

  • πŸ“ Ask and answer technical questions
  • πŸ” Filter questions by tags
  • πŸ‘ Voting system (upvote/downvote)
  • πŸ”’ User authentication
  • πŸ“Š Dynamic leaderboard or question popularity
  • πŸ“… Questions ordered by recency

πŸ› οΈ Tech Stack

Layer Tech Used
Frontend HTML, CSS, JavaScript
Backend Node.js, Express, EJS
Database MySQL
ORM/Query mysql2 with async/await
View Engine EJS Templating

πŸš€ Getting Started

πŸ“¦ Prerequisites

  • Node.js v18+ (or v22 for full compatibility)
  • MySQL server
  • Git (optional but recommended)

πŸ§‘β€πŸ’» Clone & Install

git clone https://github.com/yourusername/stackit.git
cd stackit
npm install

Database

  • Import the database using the db_schema.sql file:

    mysql -u your_mysql_user -p stackit < db_schema.sql
    
  • Update database credentials in the db.js file to match your MySQL setup:

    const db = mysql.createPool({
        host: 'localhost',
        user: 'your_mysql_user',
        password: 'your_mysql_password',
        database: 'stackit',
    });