# How the Voting System for Posts and Comments Works in Yappuccino

> Explore Yappuccino's Vote and CommentVote models the voting system for posts and comments. Learn how these models ensure one vote per user and display aggregated tallies.

- Repository: [Ja'farbek Yusupov/yappuccino](https://github.com/jafarbekyusupov/yappuccino)
- Tags: internals
- Published: 2026-03-04

---

**The Yappuccino blog platform implements separate but structurally similar voting models—`Vote` for posts and `CommentVote` for comments—that enforce one vote per user through database-level constraints and expose aggregated tallies via read-only properties.**

Yappuccino is a Django-based blog application that handles user engagement through a relational **voting system for posts and comments**. According to the source code in the `jafarbekyusupov/yappuccino` repository, the system uses distinct database models with foreign key relationships and unique constraints to ensure data integrity while providing convenient Python properties for vote aggregation.

## The Vote Model for Blog Posts