Node.js TypeScript PostgreSQL Redis Express Drizzle ORM WebSockets Docker React TailwindCSS ShadcnUI Zod

Anonymous campus community platform for verified college students to post, discuss, and interact within their college network.
Node.js TypeScript PostgreSQL Redis Express Drizzle ORM WebSockets Docker React TailwindCSS ShadcnUI Zod

Flick is an anonymous campus discussion platform designed for students to share experiences, ask sensitive questions, and discuss campus life without revealing their identity.
Many student conversations — such as academic pressure, campus politics, relationship issues, or struggles with studies and career choices — are difficult to discuss openly on identity-based platforms.
Flick enables students to participate in honest conversations while maintaining anonymity and protecting their identity.
The platform focuses on enabling open discussions while preventing the chaos typically associated with anonymous forums through moderation and controlled access.
Students often hesitate to discuss sensitive campus topics on platforms where their real identity is visible.
Discussions about academic pressure, conflicts with faculty, personal struggles, campus culture, or career uncertainty rarely happen openly when users are tied to their real profiles.
Existing platforms either:
The goal of Flick was to build a system where students can speak freely while maintaining accountability and community safety.
Instead of completely anonymous sessions, Flick assigns internal user identifiers after verification. These identifiers are never exposed publicly but allow the backend to maintain session continuity and enforce moderation rules.
Tradeoff: Requires strict separation between identity data and public activity data to prevent correlation.
Users verify their campus identity using institutional email addresses. Once verified, the system allows anonymous participation in discussions.
Reason: Ensures the platform is restricted to real students while preserving anonymity.
Tradeoff: Adds verification flow complexity but significantly improves community quality.
Posts and replies follow a threaded conversation structure rather than flat comment streams.
Reason: Improves readability and enables deeper discussions.
Tradeoff: Thread hierarchy management becomes more complex as conversations grow.
Real-time updates allow users to see replies and interactions without refreshing.
Reason: Live discussions significantly improve engagement in community platforms.
Tradeoff: Maintaining persistent connections increases backend resource usage.
Anonymous platforms fail quickly without moderation. Flick includes reporting mechanisms and automated filters to detect abusive or spam content.
The system uses:
Tradeoff: Adds operational complexity but is necessary to maintain a healthy community.
Building Flick highlighted the challenges of designing systems that balance privacy with accountability.
Key lessons: