Stack
Flask 2.3 with a blueprint per domain (auth, main, post, user, profile), MySQL through Flask-MySQL-Connector, Flask-Login sessions, Flask-WTF forms with CSRF, Flask-Mail for email verification, Flask-SocketIO for notifications, Cloudinary for media, and Jinja2 templates with custom filters. Docker Compose runs the app and the database; the app image is a multi-stage build.
Data model
user, post (title, caption, ingredients, instructions, tags and subtags), post_url for image and video media, follow, like_post, save_post, comment, notification and notification_setting for per-type preferences. The home feed pages through posts from followed users; explore samples the rest.