← Projects

iytiraf

Campus social app for Izmir Institute of Technology students: confessions, posts, events and a marketplace.

iytiraf app screens

iytiraf is a social app for students at the Izmir Institute of Technology (IYTE). It’s built around anonymous confessions (the name plays on “itiraf”, Turkish for confession) plus a campus feed: posts with photos and location tags, announcements and events, and a small marketplace where students list things to sell. Sign-up needs an IYTE email address, so only the university community can post.

Flutter and Firebase

The app is Flutter with the BLoC pattern, on Firebase: Auth, Firestore, Storage, and Cloud Functions for notifications and user services. Push notifications go through Cloud Messaging, shared posts open through Dynamic Links, and the app is in Turkish and English. Onboarding asks for photo, location and notification permissions one at a time, each with a short reason.

How iytiraf worked The Flutter app talked to Firebase directly. Cloud Functions reacted to new posts and announcements and sent push notifications; shared posts opened through Dynamic Links.

Parts: iytiraf app (Flutter · BLoC), Firebase Auth (IYTE email), Firestore (posts · events), Dynamic Links (shared posts), Cloud Functions (push · user services), Cloud Messaging (announcements).

  • iytiraf app to Firebase Auth (sign up)
  • iytiraf app to Firestore
  • iytiraf app to Dynamic Links
  • Firestore to Cloud Functions (triggers)
  • Cloud Functions to Cloud Messaging

The GraphQL stack

There’s also a GraphQL implementation: a React Native app using Apollo Client with generated types against Hasura on Postgres, CodePush for over-the-air updates, a Next.js web app with a block-based post editor, and a NestJS server with Bull job queues, Google Cloud Storage and Firebase Admin. It covers sign-in, onboarding and the post feed.