Professional portfolio website built with Django, featuring a blog system and contact functionality.
- Portfolio Management: Showcase projects with multiple images
- Blog System: Create and manage blog posts with categories and tags
- About Me Section: Display education, experience, and skills
- Contact Form: Telegram bot integration for receiving messages
- Admin Panel: Full Django admin interface for content management
- Responsive Design: Mobile-friendly interface
- Backend: Django 5.2.9
- Database: PostgreSQL
- Rich Text Editor: TinyMCE
- Deployment: Render.com
- Static Files: WhiteNoise
- Python 3.10+
- PostgreSQL
- Clone the repository:
git clone <your-repo-url>
cd <project-folder>- Create virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Create
.envfile:
SECRET_KEY=your-secret-key
DEBUG=True
NAME=your_db_name
USER=your_db_user
PASSWORD=your_db_password
HOST=localhost
PORT=5432
BOT_TOKEN=your_telegram_bot_token
TELEGRAM_CHAT_ID=your_chat_id- Run migrations:
python manage.py migrate
python manage.py createsuperuser- Collect static files:
python manage.py collectstatic- Run development server:
python manage.py runserverVisit: http://127.0.0.1:8000
- Push code to GitHub
- Create new Web Service on Render
- Connect GitHub repository
- Configure:
- Build Command:
./build.sh - Start Command:
gunicorn config.wsgi:application
- Build Command:
- Add Environment Variables (SECRET_KEY, BOT_TOKEN, etc.)
- Create PostgreSQL database and connect
.
├── config/ # Project settings
├── portfolio/ # Portfolio app
├── blog/ # Blog app
├── templates/ # HTML templates
├── static/ # CSS, JS, images
├── media/ # User uploaded files
├── manage.py
└── requirements.txt
| Variable | Description |
|---|---|
SECRET_KEY |
Django secret key |
DEBUG |
Debug mode (True/False) |
DATABASE_URL |
PostgreSQL connection string |
BOT_TOKEN |
Telegram bot token |
TELEGRAM_CHAT_ID |
Telegram chat ID |
- Custom User model
- About Me section
- Education & Experience
- Projects with image gallery
- Skills management
- Services showcase
- Blog posts with categories and tags
- Rich text content (TinyMCE)
- Comments system
- Draft/Published status
This is a personal portfolio project. Feel free to fork and customize for your own use.
This project is open source and available under the MIT License.
Your Name
- Portfolio: [Portfolio]
- GitHub: [@Seymonbek]
- LinkedIn: [Seymonbek Ikromov]
For any inquiries, please use the contact form on the website or reach out via email.
Made with ❤️ using Django