Welcome to my 30 Projects in 30 Days challenge! π― The goal is to improve backend skills across multiple programming languages by building one project per day.
Each project is small but practical β covering APIs, authentication, databases, microservices, CLI tools, and automation scripts.
30DaysBackendChallenge/
βββ day01-php-login/
β βββ dashboard.php
β βββ index.php
β βββ login.php
β βββ README.md
β βββ register.php
β βββ users.txt
β βββ assets/
β βββ app.js
β βββ icon-lock.svg
β βββ icon-shield.svg
β βββ icon-speed.svg
β βββ icon-theme.svg
β βββ illustration.svg
β βββ style.css
βββ day02-python-url-shortener/
βββ day03-node-task-api/
βββ day04-go-quotes-api/
βββ day05-ruby-cli-todo/
βββ day06-csharp-file-uploader/
βββ day07-bash-backup-script/
βββ day08-node-jwt-auth/
βββ day09-django-blog/
βββ day10-laravel-cart-api/
βββ day11-go-student-api/
βββ day12-rust-password-manager/
βββ day13-sql-library-schema/
βββ day14-java-banking-api/
βββ day15-node-payment-gateway/
βββ day16-fastapi-weather/
βββ day17-php-forum-api/
βββ day18-go-chat-server/
βββ day19-rails-event-booking/
βββ day20-csharp-inventory-api/
βββ day21-bash-python-deploy/
βββ day22-node-redis-cache/
βββ day23-fastapi-image-service/
βββ day24-laravel-email-api/
βββ day25-go-rate-limiter/
βββ day26-rust-log-parser/
βββ day27-java-roles-api/
βββ day28-csharp-notification-service/
βββ day29-django-social-api/
βββ day30-microservices-project/
| Day | Project | Language / Stack | Description |
|---|---|---|---|
| 01 | π Login & Registration System | PHP | Basic user signup/login with file storage |
| 02 | π URL Shortener | Python (Flask) | Shorten and manage URLs with SQLite |
| 03 | π Task Manager API | Node.js (Express) | CRUD API for managing tasks |
| 04 | π Quotes API | Go | Serve random quotes in JSON format |
| 05 | π CLI Todo List | Ruby | Terminal-based todo list manager |
| 06 | π File Uploader | C# (.NET) | Backend to upload and save files |
| 07 | πΎ Backup Script | Bash | Automate file backups with cron |
| 08 | π JWT Authentication API | Node.js | Secure login/register with JWT & bcrypt |
| 09 | βοΈ Blog Backend | Python (Django) | Blog CRUD with PostgreSQL |
| 10 | π E-commerce Cart API | PHP (Laravel) | Cart endpoints: add/remove/view |
| 11 | π Student Records API | Go + MongoDB | CRUD API for managing students |
| 12 | π Password Manager | Rust | CLI app to store and retrieve passwords |
| 13 | π Library DB Schema | SQL | Database schema & queries for a library |
| 14 | π³ Banking Transactions API | Java (Spring Boot) | Transfer & balance management |
| 15 | π΅ Payment Gateway Simulation | Node.js | API with webhook handling |
| 16 | π¦οΈ Weather API Wrapper | Python (FastAPI) | Proxy API that fetches weather data |
| 17 | π¬ Forum Backend | PHP + MySQL | Forum posts & comments API |
| 18 | π» Chat Server | Go (WebSockets) | Real-time chat server |
| 19 | ποΈ Event Booking System | Ruby on Rails | Events & booking CRUD |
| 20 | π¦ Inventory API | C# (.NET Core) | Manage product inventory |
| 21 | π Deployment Script | Bash + Python | Auto-pull & restart project |
| 22 | β‘ Caching Service | Node.js + Redis | API with caching for fast responses |
| 23 | πΌοΈ Image Processing Service | Python (FastAPI) | Upload & resize images |
| 24 | π§ Email Verification API | PHP (Laravel) | Email verification & reset system |
| 25 | β±οΈ Rate Limiter API | Go | Prevent abuse with request limits |
| 26 | π Log Parser | Rust | CLI tool to parse logs & save in DB |
| 27 | π₯ User Roles API | Java (Spring Boot) | Roles & permissions management |
| 28 | π Notification Service | C# + SignalR | Real-time push notifications |
| 29 | π Social Media API | Django REST | Posts, likes & user interactions |
| 30 | π Microservices Project | Node.js + Python + Go | Auth, Posts & Notifications microservices |
A small, practical URL shortener built with Flask and SQLite. The service provides a minimal web UI to create short links, a JSON API for programmatic use, and tests that run against an in-memory SQLite database.
Key features
- Shorten long URLs to short codes
- Redirect short codes to original URLs and track click counts
- Optional expiry for short links
- Minimal, responsive frontend with copy-to-clipboard
Quick start (PowerShell)
cd day02-python-url-shortener
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
# copy .env.example to .env and edit values if needed
$Env:FLASK_APP = 'app:create_app()'
$Env:FLASK_ENV = 'development'
flask runRun tests
cd day02-python-url-shortener
.\.venv\Scripts\Activate.ps1
pytest -qSee day02-python-url-shortener/README.md for full implementation notes and advanced configuration.
- Build 30 backend projects across different languages and stacks.
- Gain practical experience with APIs, databases, caching, authentication, and deployment.
- Produce a portfolio of small, demonstrable backend projects.
Each project folder contains its own README.md with a short goal, tech stack, and run instructions.
Example (Day 1):
cd day01-php-login
php -S localhost:8000Enya Elvis β¨ Backend Developer | Full-stack Enthusiast | Tech Explorer
Each day this repo will be updated with a new project. Stay tuned! π