Welcome to Wallpaperz — a simple and powerful web app where users can explore, download, and share wallpapers for their screens.
Wallpaperz is a web-based application that allows users to:
- 🧑🎨 Upload their own wallpapers
- 🗂️ Create and manage categories
- 📥 Download high-quality wallpapers
The project uses the truly RESTful API based on HATEOAS(Hypermedia as the engine of application state) architecture. That means the frontend doesn’t need to know anything about the server's internal workings. It just follows HTML links and forms — like a web browser should! This makes the client fully decoupled from the server.
All communication between the frontend and backend is done using HTML, making it simple yet very effective.
- ⚡ htmx — Dynamic HTML interactions
- 🧠 Alpine.js — Reactive components
- 🎨 Bootstrap — Layout and styling
- 🌐 Vanilla JavaScript — Custom logic
- 🐍 Django — Robust Python web framework
- 🖼️ Pillow — Image processing (e.g. image compression)
- 💾 SQLite - Database
Coming soon! 🔧🧪
I am working on capturing some awesome screenshots of the app in action. Stay tuned! 👀
Follow this guide to set up and run this Django project locally.
Clone the repository and go to directory:
git clone https://github.com/Soham7777777/Wallpaperz.git
cd Wallpaperz
Using a virtual environment helps isolate project's dependencies.
python -m venv .venv
.venv\Scripts\activate
python3 -m venv .venv
source .venv/bin/activate
After activating your virtual environment, install all required packages:
pip install -r requirements.txt
In the root directory of project, create a file named .env.
SECRET_KEY = 'ANY RANDOM SECRET STRING'
python manage.py migrate
Start the Django development server:
python manage.py runserver
Now, open your browser and go to: http://localhost:8000