Description
A mobile app that helps people build connections through shared experiences and emotions. The app allows users to find a companion for an event such as a concert, exhibition, party, etc., or a partner for a relationship. Users can create their own events or join events created by others.
Project Background
The founder wanted to create an app for finding people to attend events together. The client had no technical background or in-house team to build a full-fledged mobile application. The idea was all they had.
Objectives
- Create the app logo and brand design
- Design the mobile application
- Develop an MVP cross-platform mobile app
- Test product hypotheses with user test groups
- Release the app on the App Store in full compliance with platform guidelines
- Maintain the app in working condition
- Collect user feedback
- Improve the MVP based on user suggestions
Tech Stack
React Native, Directus, Nest.js, TypeORM, Redis, Firebase, Centrifuge, AWS (cloudfront, route53, s3, eks), GitHub actions, Sentry
Key features
- Registration & Authorization
- Via mobile phone using SMS code
- Profile
- Create, edit, and delete user profile
- Notification settings
- Feedback form in profile
- View other users’ profiles
- Report or share other users
- User blacklist
- Profile visibility settings in feed
- Deactivate profile
- Feed
- Dynamic feed of profiles and events
- Filters based on user characteristics
- Filters based on event characteristics
- Events
- View, create, edit, and delete events
- Send and accept event participation requests
- View incoming and outgoing requests
- Share events
- Automatic notifications about event start or cancellation
- Automatic notifications about events that might interest the user
- Report events
- Chat
- Private chats
- Sending and receiving messages
- Notifications
- Admin Panel
- Content management
- User management, including blocking and deletion
- Event management
- Handling user reports
- Processing feedback form submissions
- Integrations
Key Solutions
- Events
- Event organizers needed a convenient way to manage invitations and requests, while users needed to quickly discover events that matched their interests. To solve this, we implemented a request and invitation system along with settings for age, gender, and location preferences. This helped organizers reach exactly the kind of users who would be genuinely interested in their events.
- It was also important to automate communication between users participating in the same event. We achieved this by developing a chat that activates automatically once a user's participation is confirmed. The chat also sends notifications about event status changes. We used WebSocket, Centrifugo, and Firebase for real-time message delivery. The chat was built as a custom solution, which allowed us to reduce maintenance costs.
- Admin Panel Directus
- Administrators needed tools to moderate content and ensure compliance with platform rules. To address this, we integrated the Directus panel with custom hooks that allow the system to send messages on behalf of the platform. The panel is connected to Amazon S3, enabling easy access to uploaded photos and videos for review and management. Administrators can efficiently manage content, handle user feedback, and quickly respond to violations, improving the overall safety of the platform.
- Notifications
- To increase user engagement and encourage event creation, we implemented a system of marketing notifications. These notifications inform users about new events and motivate them to take action. They are triggered both on a scheduled basis and in real time, depending on user location and behavior.
- Integrations
- To prevent the creation of fake accounts and increase trust in the platform, an SMS verification service was implemented. This solution blocks the mass creation of fake profiles. As a result, platform security was improved and user trust was strengthened.