A StackOverflow-style Q&A platform built with Flask + SQLite. Users can ask questions, answer, @mention, vote, and get notifications. Admins can manage users, delete questions, and ban accounts.
- Auth: sign up / login / logout
- Ask & answer questions
- @Mentions + notifications
- Voting (+1 / −1)
- Admin dashboard (manage users & questions)
- Markdown/Quill editor
- Image uploads
- Python (Flask, Flask-Login, SQLAlchemy, Jinja2)
- SQLite
- Bootstrap + custom CSS
# 1) clone
git clone https://github.com/Tousif18/stackit.git
cd stackit
# 2) install deps
pipx install poetry # if you don't have Poetry
poetry install
# 3) run
poetry run python main.py# create & activate a venv, then:
pip install -r requirements.txt
python main.py
If using Option B, generate requirements.txt once via:
poetry export -f requirements.txt -o requirements.txt --without-hashes
Create a .env file (not committed) for secrets:
FLASK_SECRET_KEY=change-me
DATABASE_URL=sqlite:///app.db
The app reads from environment variables; fallbacks exist for local dev.
- Search & Pagination for easy navigation through questions
- User Profiles & Reputation: track activity, ask/answer history, badges
- Tags System: categorise questions and filter by topics
- Accept Answers & Voting Scoreboard: highlight best solutions and contributions
- Notifications: get notified on mentions, answers, and comments
- Docker + CI: containerise the app and add automated testing via GitHub Actions
MIT



