About YoshiBlog

Welcome to YoshiBlog, a modern, feature-rich blogging platform built with Django. Whether you're a developer sharing technical insights, a writer documenting your journey, or a community builder fostering discussions, YoshiBlog provides the tools you need to create engaging content and connect with your audience.

Key Features

  • Rich Text Blogging: Create and edit posts with support for markdown, code syntax highlighting, and embedded media
  • Interactive Comments: Engage readers with threaded comments, like/unlike functionality, and real-time updates
  • Social Sharing: Easily share your posts across platforms with built-in sharing buttons
  • User Authentication: Secure login/signup with social account integration (GitHub, Google)
  • Responsive Design: Optimized for all devices - desktop, tablet, and mobile
  • Tag System: Organize content with customizable tags for better discoverability
  • Like System: Allow readers to show appreciation for posts and comments
  • Email Notifications: Stay connected with password reset and account management features

Our Mission

YoshiBlog is a comprehensive Django project built for learning and practice purposes. This platform demonstrates modern web development techniques, including secure user input handling, AJAX interactions, responsive design, and cloud deployment. It serves as a practical example of building a full-featured blogging application with Django.

Technology Stack

Backend
  • Django (Python)
Frontend
  • Bootstrap 5
  • JavaScript/jQuery
Database
  • SQLite (development)
  • PostgreSQL (production)
Deployment
  • AWS Lambda with API Gateway
  • Amazon S3 for static files

Security & Sanitization

User security is paramount in YoshiBlog. We use nh3, a Python library for HTML sanitization, to clean and validate all user-generated content. This prevents cross-site scripting (XSS) attacks and ensures that malicious HTML or JavaScript cannot be injected into blog posts, comments, or other user inputs. nh3 provides fast, secure sanitization while preserving legitimate formatting.

Get Started

Ready to start blogging? Sign up today and create your first post!

Sign Up Now