A professional, open-source Django portfolio website with admin-managed content and modern responsive design. Perfect for developers, designers, and creative professionals looking to showcase their work.
- Effortless Setup: Designed for non-developers also with a simple, guided installation process
- Responsive Design: Modern, mobile-first layout with light/dark theme support
- Content Management: Intuitive admin dashboard for managing projects, skills, and personal information
- SEO Ready: Built-in SEO optimization with robots.txt and sitemap.xml
- Free Hosting: Designed for easy deployment on PythonAnywhere
- Customizable: Flexible template system and modular design
View the live demo at: mohinuddinshipon.pythonanywhere.com
- Backend: Django 5.x
- Frontend: HTML5, CSS3, TailwindCSS, JavaScript
- Database: SQLite (It is more than enough)
- Hosting: PythonAnywhere (free)
- Python: 3.10+ (recommended: 3.12+)
Choose your deployment method:
Deploy directly to PythonAnywhere without local setup - perfect for content-only customization.
Set up locally for design customization and advanced features.
- Free PythonAnywhere account (signup here)
- Your username will determine your domain:
username.pythonanywhere.com
-
Create Web App
- Go to Web tab β Add a new web app
- Select: Django β Python 3.12 β Name:
portfolio
-
Install via Console
- Navigate to Consoles tab β Start Bash console
- Run the following commands:
rm -rf portfolio/ git clone https://github.com/ssshiponu/portfolio cd portfolio ./setup.sh
-
Activate Your Site
- Return to Web tab β Click Reload
- Your site is now live at
username.pythonanywhere.com
- Visit
username.pythonanywhere.com/admin
- Login with default credentials:
- Username:
admin
- Password:
shipondjango
- Username:
β οΈ Important: Change your password immediately after first login
Access your admin panel at /admin
to manage:
- Hide Section: from the
Sections
, you can hide any section. - Personal Profile: Bio, contact info, social links
- Projects: Portfolio items with descriptions, images, and links
- Skills: Technical skills with proficiency levels
- Development Process: Your workflow and methodologies
- Site Metadata: SEO settings and site information
- Images: Use high-quality images (recommended aspect-ratio 4:3 and minimum height 320px for projects)
- Descriptions: You can add html formate in description.
- Links: Ensure all external links are working and use HTTPS
- Skills: Organize skills by categories for better presentation
git clone https://github.com/ssshiponu/portfolio.git
cd portfolio
Windows:
python -m venv venv
venv\Scripts\activate
macOS/Linux:
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"
Option 1: .env File (Easy Recommended)
Create .env
in project root add this code:
SECRET_KEY='your_generated_secret_key_here'
DEBUG='True'
Option 2: Environment Variables
Windows (CMD):
set SECRET_KEY=your_generated_secret_key_here
Windows (PowerShell):
$env:SECRET_KEY="your_generated_secret_key_here"
macOS/Linux:
export SECRET_KEY=your_generated_secret_key_here
python manage.py collectstatic
python manage.py runserver
Visit http://127.0.0.1:8000
to view your site.
For production deployment:
- Set
DEBUG=False
in environment - Configure
ALLOWED_HOSTS
- Enable HTTPS
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to branch:
git push origin feature/amazing-feature
- Open a Pull Request
- Follow PEP 8 style guidelines
- Add comments for complex logic
- Update documentation for new features
- Test your changes thoroughly
Open an issue with:
- Clear description of the problem
- Steps to reproduce
- Expected vs actual behavior
- Screenshots (if applicable)
- Repository: GitHub
- Issues: Bug Reports & Feature Requests
- Django Documentation: djangoproject.com
- PythonAnywhere Help: pythonanywhere.com/help
This project is licensed under the MIT License - see the LICENSE file for details.
Start showcasing your work professionally with this Django portfolio website. Whether you're a developer, designer, or creative professional, this platform provides everything you need to create an impressive online presence.
Questions? Open an issue or reach out through the repository discussions.
Built with β€οΈ using Django