https://github.com/soham7777777/wallpaperz
Wallpapers web application
https://github.com/soham7777777/wallpaperz
django htmx image-processing masonry-grid pillow redis-queue wallpapers
Last synced: 28 days ago
JSON representation
Wallpapers web application
- Host: GitHub
- URL: https://github.com/soham7777777/wallpaperz
- Owner: Soham7777777
- Created: 2025-04-28T14:26:57.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-06T18:16:58.000Z (about 1 year ago)
- Last Synced: 2025-05-06T19:37:00.103Z (about 1 year ago)
- Topics: django, htmx, image-processing, masonry-grid, pillow, redis-queue, wallpapers
- Language: Python
- Homepage:
- Size: 89.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# πΌοΈ Wallpaperz
Welcome to **Wallpaperz** β a simple and powerful web app where users can explore, download, and share wallpapers for their screens.
---
## π Introduction
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](https://htmx.org/essays/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.
---
## π§° Tech Stack
### π» Frontend
- β‘ [htmx](https://htmx.org/) β Dynamic HTML interactions
- π§ [Alpine.js](https://alpinejs.dev/) β Reactive components
- π¨ [Bootstrap](https://getbootstrap.com/) β Layout and styling
- π [Vanilla JavaScript](http://vanilla-js.com/) β Custom logic
### ποΈ Backend
- π [Django](https://www.djangoproject.com/) β Robust [Python](https://www.python.org/) web framework
- πΌοΈ [Pillow](https://python-pillow.org/) β Image processing (e.g. image compression)
- πΎ [SQLite](https://www.sqlite.org/) - Database
---
## πΈ Screenshots
> _Coming soon!_ π§π§ͺ
I am working on capturing some awesome screenshots of the app in action. Stay tuned! π
---
# π Django Project Setup Guide
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
```
---
## β
1. (Optional but Recommended) Create a Virtual Environment
Using a virtual environment helps isolate project's dependencies.
### For Windows:
```bash
python -m venv .venv
.venv\Scripts\activate
```
### For Linux/macOS:
```bash
python3 -m venv .venv
source .venv/bin/activate
```
## π¦ 2. Install Dependencies
After activating your virtual environment, install all required packages:
```bash
pip install -r requirements.txt
```
## π οΈ 3. Create a .env File
In the root directory of project, create a file named .env.
```bash
SECRET_KEY = 'ANY RANDOM SECRET STRING'
```
## π§ 4. Apply Migrations
```bash
python manage.py migrate
```
## π 5. Run the Development Server
Start the Django development server:
```bash
python manage.py runserver
```
Now, open your browser and go to: `http://localhost:8000`