A modern, Django-based portfolio application designed to showcase projects, updates, and provide a means of contact.
- Portfolio Showcase: distinct section to display projects (
apps/core). - Updates/Blog: A system to post regular updates or blog entries (
apps/updates). - Contact Form: A fully functional contact form to get in touch (
apps/contact). - Responsive Design: Built with custom HTML/CSS for a unique look.
- Backend: Python, Django 4.2
- Server: Gunicorn
- Static Files: WhiteNoise
- Database: SQLite (Development), DJ-Database-URL supported
- Frontend: HTML5, CSS3, JavaScript
Follow these steps to set up the project locally:
-
Clone the repository:
git clone https://github.com/abhi-abhi86/shadow.git cd shadow -
Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install dependencies:
pip install -r my_portfolio/requirements.txt
-
Set up environment variables: You can export these in your shell or create a
.envfile if you configurepython-dotenv.SECRET_KEY: A secret string for Django security.DEBUG: Set toTruefor development.
-
Apply migrations:
python my_portfolio/manage.py migrate
-
Run the development server:
python my_portfolio/manage.py runserver
my_portfolio/: Main project directory.apps/: Contains the Django applications.core/: Main functionality (Home, Projects).contact/: Contact form and logic.updates/: Blog/Updates functionality.
config/: Project settings and configuration.static/: CSS, JS, and images.templates/: HTML templates.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.