← Back to Home

🌐 Portfolio Website Generator

A custom static site generator built specifically for creating elegant, responsive portfolio websites. This project combines the simplicity of Markdown with the power of Python templating.

🚀 Key Features

  • Markdown-Based Content: Write content in Markdown with YAML frontmatter
  • Flexible Templating: Jinja2 templates for complete customization
  • Development Server: Built-in server with live reload functionality
  • CLI Interface: Comprehensive command-line tools for all operations
  • Cross-Platform: Works seamlessly on Windows, macOS, and Linux

🛠️ Technology Stack

  • Python 3.8+: Core language and ecosystem
  • Jinja2: Template engine for HTML generation
  • Markdown: Content processing with extensions
  • Click: Command-line interface framework
  • Watchdog: File system monitoring for live reload
  • YAML: Configuration and metadata management

📁 Architecture

The generator follows a clean, modular architecture:

├── cli.py # Command-line interface ├── src/ │ └── generator.py # Core generation logic ├── content/ # Markdown content files ├── templates/ # Jinja2 HTML templates ├── static/ # CSS, JS, images └── dist/ # Generated website

🎯 Design Philosophy

  • Simplicity First: Easy to use for non-technical users
  • Developer Friendly: Extensible and customizable
  • Performance: Fast builds and lightweight output
  • Maintainable: Clean code with comprehensive documentation

🔧 Advanced Features

Live Development

Real-time file watching with automatic rebuilds during development.

Custom Templates

Full control over HTML structure with Jinja2 templating system.

Static Asset Management

Automatic copying and optimization of CSS, JavaScript, and images.

SEO Optimization

Clean URLs, metadata support, and semantic HTML structure.

🚀 Future Enhancements

  • [ ] Theme system with pre-built templates
  • [ ] Image optimization and responsive images
  • [ ] RSS feed generation
  • [ ] Plugin architecture for extensions
  • [ ] Multi-language support

📋 Project Overview

Custom static site generator built with Python, Jinja2, and Markdown for creating elegant portfolio websites