A modern portfolio website for an interior design business with a Flask backend and MySQL database.
- Responsive design
- Contact form with validation
- Portfolio showcase
- Admin interface for managing contacts
- MySQL database integration
- Python 3.8 or higher
- MySQL Server
- Node.js (for development)
- Clone the repository:
git clone <repository-url>
cd interior-design-portfolio- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install Python dependencies:
pip install -r requirements.txt- Set up MySQL database:
CREATE DATABASE interior_design;- Configure environment variables:
- Copy
.env.exampleto.env - Update the database credentials and secret key in
.env
- Run the Flask application:
python app.py- Access the website:
- Frontend: http://localhost:5000
- Admin API: http://localhost:5000/admin/contacts
interior-design-portfolio/
├── static/
│ ├── css/
│ │ └── style.css
│ └── js/
│ └── script.js
├── templates/
│ ├── index.html
│ ├── about.html
│ ├── portfolio.html
│ └── contact.html
├── app.py
├── requirements.txt
└── .env
- POST
/contact- Submit contact form - GET
/admin/contacts- Get all contact submissions
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a new Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.