Skip to content

Repository files navigation

WOODORA Banner

⭐ Give this project a star if you like it!

WOODORA

Luxury Interior Design Portfolio Website

A Professional Interior Design Business Platform

Live Demo Django PostgreSQL Deployed on Render


A beautiful website for interior design businesses

Visit Live WebsiteSee FeaturesTechnology


What Is This Project?

WOODORA is a complete website for interior design businesses. It helps designers show their work, talk to clients, and run their business online. Everything is easy to use and looks professional.

Beautiful designs. Simple to use. Professional results.


What You Get

For Website Visitors (Your Customers)

Nice Looking Website

  • Beautiful home page
  • Photo galleries showing your work
  • Easy to read text and colors
  • Smooth page changes

UI Preview

What Visitors Can See

Your work is shown in the best way:

  • Project Photos - Clear, high-quality pictures of your completed projects
  • Services List - What you offer and how much it costs
  • Contact Form - Easy way for people to message you
  • User Login - People can sign in with their Google account

Project Gallery


Control Panel (For You, The Owner)

An easy control panel to manage everything:

Dashboard Icon

** See Your Numbers**

Check your business stats:

  • How many projects you have
  • Messages from customers
  • People who signed up
  • Which services people view

Management Icon

** Update Your Content**

Change things easily:

  • Add, edit, or delete projects
  • Upload many photos at once
  • Change your services
  • Manage users

Communication Icon

** Handle Customer Messages**

Stay organized:

  • Read all messages
  • See contact form entries
  • Delete spam messages
  • Keep customer information

What We Used to Build This

Built with Good Tools

graph LR
    A[Visitor's Web Browser] --> B[Render Hosting]
    B --> C[Django Backend]
    C --> D[PostgreSQL Database]
    C --> E[Login System]
    E --> F[Google Login]
    C --> G[Website Files]
    G --> H[WhiteNoise]
Loading

Technology Details

Server Side (Backend)

Framework: Django 5.2
Database: PostgreSQL (Neon Cloud)
Login System: Django Allauth + Google Login
Data Storage: Django ORM
Hosting: Render.com
Security: SSL (Secure Connection)
Status: Ready for Real Use

What People See (Frontend)

Page Structure: HTML5
Design: CSS3 + Bootstrap 5
Interactions: JavaScript
Icons: Font Awesome
Fonts: Google Fonts
 

How We Store Information

Database Setup

Project Details

class Project(models.Model):
    title = CharField()
    description = TextField()
    category = CharField()
    year = IntegerField()
    location = CharField()
    area = DecimalField()
    cover_image = ImageField()
    gallery_images = ManyToMany()
    created_at = DateTimeField()

Service Details

class Service(models.Model):
    title = CharField()
    description = TextField()
    price = DecimalField()
    image = ImageField()
    is_featured = BooleanField()
    created_at = DateTimeField()

How the Website Goes Online

Automatic Publishing

┌─────────────┐        ┌──────────────┐        ┌─────────────┐
│   GitHub    │ ────▶  │  Render.com  │ ────▶  │  Neon DB    │
│   Code      │  Push  │  Auto Upload │  SSL   │  Database   │
└─────────────┘        └──────────────┘        └─────────────┘
                              │
                              ▼
                       ┌──────────────┐
                       │  Live Site   │
                       │   🌍 Online  │
                       └──────────────┘

What This Does:

  • No Website Breaks — Changes happen smoothly
  • Safe Connection — Your data is protected
  • Fast Loading — Pages load quickly
  • Always Watching — We check if everything works
  • Auto Save — Your information is backed up

Problems Fixed

Technical Issues Solved

Problem: Host Error

Error: Website address not allowed
Solution: Fixed the settings
ALLOWED_HOSTS = [
    host.strip() 
    for host in os.environ.get(
        'ALLOWED_HOSTS', ''
    ).split(',')
]

Problem: Database Won't Connect

Error: Can't connect to database
Solution: Added secure connection
DATABASES = {
    'default': dj_database_url.config(
        conn_max_age=600,
        ssl_require=True
    )
}

Folder Organization

woodora-interior-design-business/
│
├──  myproject/                 # Main settings
│   ├── settings.py               # Website settings
│   ├── urls.py                   # Page links
│   └── wsgi.py                   # Server setup
│
├──  authentication/            # Login system
│   ├── models.py                 # User information
│   ├── views.py                  # Login pages
│   └── templates/                # Login design
│
├──  projects/                  # Project pages
│   ├── models.py                 # Project information
│   ├── views.py                  # Project pages
│   └── templates/                # Project design
│
├──  services/                  # Services section
│   ├── models.py                 # Service information
│   └── views.py                  # Service pages
│                 
│
├──  templates/                 # Page designs
│   ├── base.html                 # Main layout
│   ├── index.html                # Home page
│   └── components/               # Reusable parts
│
├──  static/                    # Website files
│   ├── css/                      # Styles
│   ├── js/                       # Scripts
│   └── images/                   # Pictures
│
├──  media/                     # Uploaded files
│   ├── projects/                 # Project photos
│   └── services/                 # Service photos
│
└──  requirements.txt           # Software list

How to Set It Up

What You Need

Python 3.11 or newer
PostgreSQL 14 or newer
Git

Setup Steps

#  Download the code
git clone https://github.com/sayyedrabeeh/woodora-interior-design-bussiness-portfolio.git
cd woodora-interior-design-bussiness-portfolio

#  Make a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

#  Install needed software
pip install -r requirements.txt

#  Set up your details
cp .env.example .env
# Edit .env file with your information

#  Set up database
python manage.py migrate

#  Make admin account
python manage.py createsuperuser

#  Get website files ready
python manage.py collectstatic --noinput

#  Start the website
python manage.py runserver

** Open your browser and go to:** http://localhost:8000


Why This Helps Your Business

Look More Professional

A good website shows you do quality work

Get More Customers

Easy way to show your work and get new clients

Save Time

Manage everything from one place

Analytics

Main Features

** Google Friendly** • ** Safe & Secure**



Want to Help Make This Better?

Everyone can help! You can fix problems, add new things, or make the guides better.

How to Help:

  1. Copy (Fork) this project
  2. Make a new branch (git checkout -b feature/NewThing)
  3. Save your changes (git commit -m 'Add NewThing')
  4. Upload to GitHub (git push origin feature/NewThing)
  5. Ask us to add it (Pull Request)

License

MIT License

Copyright (c) 2024 WOODORA Interior Design

You can use this code for free in your own projects.
See LICENSE file for all details.

Read Complete License


Why WOODORA Is Good

Nice design + smart technology

Footer Banner


Need Extra Help?

Want to make WOODORA even better for your business?


Made with ♥️ by Sayyed Rabeeh

GitHub LinkedIn Portfolio


⭐ Give this project a star if you like it!

About

This project is a complete interior design business platform built to highlight creativity, craftsmanship, and premium brand identity. Powered by Django and designed with attention to visual detail, it includes dynamic project showcases, client stories, category filtering, responsive layouts, and a professional content management structure.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages