A futuristic, self-hosted project portfolio built using Flask, HTML/CSS/JS & Three.js π
Think of it as your own personal cosmic GitHub β themed, optimized, and beautiful.
I built AstroHub as a lightweight and visually rich alternative to GitHub β giving myself more control over how I present my work, especially during hackathons, client demos, and tech portfolios.
- β User-Added Projects β Users can now submit their own GitHub repo links and descriptions to showcase on AstroHub
- π¦ ZIP File Downloads β Each project includes an optional ZIP download link stored on Google Drive (secured)
- π§Ύ Dynamic Project Cards β Backend updated to load user-submitted projects
- π οΈ Bug Fixes β Previous version lacked external project submission and ZIP support
| Layer | Technologies Used |
|---|---|
| Backend | Flask, Flask-Login, Flask-SQLAlchemy |
| Frontend | HTML, CSS, JavaScript |
| Animation | Three.js (animated starfield) |
| Auth & DB | Login system, SQLite/SQL supported |
- π Starry animated background using Three.js
- π Project cards with title, description, GitHub link, and Google Drive ZIP download
- π User login/signup with Flask-Login
- π Add your own project using GitHub link + Drive ZIP
- π°οΈ Fully responsive and mobile-friendly layout
- πΈ Glowing neon blue alien theme (Dark Mode by default)
- π€οΈ Route Management β Faced issues where Flask routes didnβt match HTML paths, causing broken links & redirects.
- ποΈ Database Issues β MySQL on localhost stopped working, so I switched to an SQLite DB (AstroDB.sqlite3) inside the project.
- π Login Redirect β Sometimes after pressing login, the app didnβt go to the dashboard due to session & redirection bugs.
AstroHub/ β βββ app.py # Main Flask app βββ instance/ β βββ astro.db # Data Base For Projects & Users Details βββ templates/ β βββ index.html # Landing page β βββ login.html # Login page β βββ signup.html # Signup page β βββ dashboard.html # Projects page β βββ add_project.html # Add New Projects as Per User β βββ static/ β βββ css/ # Styles β βββ js/ # Starfield animation (Three.js) β βββ preview/ # Downloadable files β βββ images/ # Assets like logos β βββ config.json # Configuration βββ README.md # This file
# 1. Clone this repo
git clone https://github.com/ck-ahmad/AstroHub.git
cd AstroHub
# 2. Set up a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
# 4. Run the app
python app.py
# Open in browser
http://127.0.0.1:5000/
π§ Project Showcase (Inside AstroHub)
Like:
π TONY AI β Personal Assistant
π Google Drive Clone (C++)
π Student Assistant Helper
π + Add your own via GitHub & Drive!
π Live Demo
π§ Coming Soon on Render/Vercel
β
Meanwhile, view demo video above βοΈ
π€ Author
Ahmad
π GitHub Profile
π« Links in bio
π License
MIT License β Free to fork, build on, and use.
AstroHub was built for the open-source galaxy π
markdown
Copy
Edit
Would you like:
- β
A sample `config.json`?
- β
A generated `requirements.txt`?
- β
Flask route and form logic for submitting project name + repo + ZIP link?