Your Complete Guide to Online Earnings
A clean, futuristic directory for earning opportunities - surveys, videos, microtasks, cashback, and more.
- π Real-time Search - Find sites instantly as you type
- π― Advanced Filtering - Filter by earning method, payout type, country, and more
- π Nigeria Focus - Special filters for Africa availability
- π Featured Sites - Highlighted top-picks for maximum earnings
- π± Responsive Design - Works beautifully on mobile, tablet, and desktop
- π¨ Futuristic UI - Dark theme with glassmorphism and smooth animations
- Docker (20.10+)
- Docker Compose (2.0+)
- Git
-
Clone the repository
git clone https://github.com/yourusername/tipshub.git cd tipshub -
Set up environment variables
cp .env.example .env # Edit .env with your configuration -
Start the application
docker-compose up -d
-
Access the application
- Frontend: http://localhost
- API: http://localhost/api
- Admin: http://localhost/admin
cd backend
# Create 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
# Create superuser
python manage.py createsuperuser
# Run development server
python manage.py runservercd frontend
# Install dependencies
npm install
# Run development server
npm run dev# Build and start all services
docker-compose up --build
# View logs
docker-compose logs -f
# Stop all services
docker-compose down
# Reset database
docker-compose down -vtipshub/
βββ backend/ # Django REST API
β βββ tipshub/ # Main Django project
β βββ sites/ # Earning sites app
β βββ manage.py
β βββ requirements.txt
β βββ Dockerfile
β
βββ frontend/ # React frontend
β βββ src/
β β βββ components/ # React components
β β βββ pages/ # Page components
β β βββ hooks/ # Custom hooks
β β βββ services/ # API services
β β βββ store/ # State management
β βββ public/
β βββ index.html
β βββ vite.config.js
β βββ Dockerfile
β
βββ nginx/ # Nginx configuration
β βββ nginx.conf
β
βββ docker-compose.yml # Docker Compose config
βββ .env.example # Environment variables template
βββ PRODUCT_SPEC.md # Product specification
βββ README.md # This file
| Variable | Description | Default |
|---|---|---|
DEBUG |
Django debug mode | False |
SECRET_KEY |
Django secret key | (required) |
ALLOWED_HOSTS |
Allowed hostnames | localhost |
DB_NAME |
PostgreSQL database name | tipshub |
DB_USER |
PostgreSQL username | tipshub_user |
DB_PASSWORD |
PostgreSQL password | (required) |
DB_HOST |
Database host | db |
DB_PORT |
Database port | 5432 |
| Service | Port |
|---|---|
| Nginx | 80, 443 |
| Django API | 8000 |
| React Dev | 5173 |
| PostgreSQL | 5432 |
| Endpoint | Method | Description |
|---|---|---|
/api/sites/ |
GET | List all sites |
/api/sites/{slug}/ |
GET | Get site details |
/api/sites/featured/ |
GET | Featured sites only |
/api/methods/ |
GET | Earning methods list |
/api/payouts/ |
GET | Payout methods list |
/api/countries/ |
GET | Countries list |
/api/filters/ |
GET | All filter options |
/api/health/ |
GET | Health check |
# Filter by status
GET /api/sites/?status=active
# Filter by earning method
GET /api/sites/?methods=surveys
# Filter by Nigeria availability
GET /api/sites/?nigeria=true
# Combined filters
GET /api/sites/?status=active&methods=surveys&min_payout=5# Start all services
docker-compose up -d
# Rebuild services
docker-compose up -d --build
# View logs
docker-compose logs -f [service]
# Stop services
docker-compose down
# Stop and remove volumes
docker-compose down -v# Run migrations
docker-compose exec backend python manage.py migrate
# Create migrations
docker-compose exec backend python manage.py makemigrations
# Create superuser
docker-compose exec backend python manage.py createsuperuser
# Collect static files
docker-compose exec backend python manage.py collectstatic --noinput# Restart a specific service
docker-compose restart backend
# View service status
docker-compose ps
# Access container shell
docker-compose exec backend bash
docker-compose exec frontend shAccess the Django admin panel at /admin/ to:
- Add, edit, or delete earning sites
- Manage earning methods and payout options
- Update site verification status
- Import/export data via CSV or JSON
Default admin credentials: Created via createsuperuser command.
| Role | Color | Hex |
|---|---|---|
| Background | Pure Black | #000000 |
| Surface | Near Black | #0a0a0a |
| Border | Charcoal | #262626 |
| Text | White | #ffffff |
| Text Secondary | Gray | #a3a3a3 |
- Headings: Space Grotesk (600, 700)
- Body: Inter (400)
- Monospace: JetBrains Mono
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Django - The web framework
- React - The UI library
- Tailwind CSS - The styling framework
- Docker - Containerization platform
Made with β‘ for earners everywhere