Trafa
Trafa

Trafa

Engage with nearby users, discover trending threads, and stay updated effortlessly with real-time notifications.

Trafa is an innovative geosocial networking app designed to connect you with people nearby. By setting a pin on the map, you can start a thread on any topic. These threads can be liked, disliked, and shared. Users can follow each other and receive notifications about new threads in their area or from people they follow.

Stack:

React Native, Firebase, Axios, Sentry, Google Maps API, Tailwind, Typescript, Gleap, Mapbox, SimpleLocalize, Branch.io, NestJS, PostgreSQL, Prisma ORM, Amazon S3

Market

Trafa targets the B2C sector within the social networking and geolocation space, appealing to individuals looking for a platform that fosters local community engagement, information sharing, and real-time interaction through location-based discussions.

Users
  • Local Community Members: Individuals seeking to connect with others in their area through discussions on a variety of topics, benefiting from real-time notifications and location-based interactions.
  • Content Creators: Users who actively post threads and share insights, contributing to the growth of local online communities and enhancing social engagement.
Problem Statement

Enhance community engagement with a platform for discussions, seamless authentication integration, real-time data sync and notifications, and Google Maps for location-based services.

Tags

Geosocial Networking, Real-time Notifications, Location-based Services, Thread Sharing, User Engagement, Google Maps Integration, Local Communities, Multi-authentication, Data Synchronization, Privacy and Security

Team

3 developers, QA, Project Manager, Product Manager, UI/UX Designer, 1 DevOps

Project duration

8 months

Features

Authorization

Authorization allows users to sign up and log in via Email, Google or Apple using Firebase Authentication. This ensures secure access to the app's features, with the backend (NestJS) managing authentication tokens and user sessions.

Authorization

Map-based Threads

Users can create, view, comment, like, and dislike Thread-Points on a map. This feature uses the react-native-maps library on the frontend and MapBox API via NestJS on the backend for geocoding and map-related services.

Map-based Threads

Post & Edit Threads

To create a Thread, the user should choose an emoji, and it will display on the Pin. Optionally, the user can add a photo and make a Thread Public & Private.

Post & Edit Threads

Threads list

Based on the algorithm, the Thread list provides the user with the nearest and most relevant threads. Threads serve as the main discussion units where users can post, comment, vote and like. Implemented using React Native for the frontend and Getstream.io for real-time updates, the backend manages thread data and interactions via NestJS and Prisma.

Threads list

Subscription

The subscription plan feature allows users to subscribe to premium content or additional features within the app.

Subscription

1-on-1 Chat

1-on-1 chat enables direct messaging between users, utilizing Stream.io for real-time communication. React Native handles the chat interface, while NestJS manages chat sessions and integrates with Stream.io for message handling.

1-on-1 Chat

User Profile

One of the core profile features is Karma — it provides a user level based on his Threads and Comments activity. The user profile allows users to follow or unfollow others, reply to posts, and view user activity on a map with markers showing their posts and interactions.

User Profile

Lists and Sharing

The user can create a list of Threads to share with friends. Also, e.g. - best ski spots; Lists can be private or public. The access is provided by the deep links.

Lists and Sharing

Product screenshots