Heap Overflow is a parody of Stack Overflow, designed as a Q&A website where developers can authenticate to share knowledge, ask questions, and follow topics of interest. Seeded with intentionally incorrect answers to simulate chaotic dev forums—alongside accurate, well-written answers to demonstrate subject knowledge.
- User Authentication — Secure signup, login, and logout functionality.
- Ask & Answer Questions — Authenticated users can post and respond to programming questions.
- Topic Following — Users can follow specific topics and technologies.
- Search & Filter — Easily find questions or browse by topic.
- Responsive UI — Clean, mobile-friendly design with Bootstrap.
💬 Check out a live demo of Heap Overflow.
Frontend:
- HTML, CSS
- Bootstrap
Backend:
- Python
- Django
Database:
- SQLite (development)
- PostgreSQL (production)
Deployment:
- Heroku
- Clone the Repository:
git clone https://github.com/blakebrandon-hub/heap-overflow.git cd heap-overflow
To set up Heap Overflow locally, follow these steps:
-
Clone the Repository:
git clone https://github.com/blakebrandon-hub/heap-overflow.git cd heap-overflow
-
Set Up a Virtual Environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install Dependencies:
pip install -r requirements.txt
-
Run Migrations:
python manage.py migrate
-
Start the Development Server:
python manage.py runserver
-
Access the Application: Open your browser and navigate to
http://127.0.0.1:8000/
.
Heap Overflow is hosted on Heroku. To deploy your own instance:
-
Set Up a Heroku Account:
- Create a Heroku account at https://www.heroku.com/.
-
Install the Heroku CLI: Follow the Heroku CLI documentation to install.
-
Deploy to Heroku:
heroku login heroku create heap-overflow git push heroku main heroku run python manage.py migrate
-
Configure Environment Variables: Set the necessary variables such as
SECRET_KEY
,DEBUG
, and database credentials using the Heroku dashboard or CLI.
This project is licensed under the MIT License. See the LICENSE
file for details.
- Author: Blake Brandon
- Email: blakebrandon.dev@gmail.com