Inspiration

SafeTrace was born from a passion to empower communities with real-time safety tools. Inspired by rising safety concerns and the power of social platforms, we envisioned a TikTok-like app where users share live streams and posts to stay vigilant, fostering safer neighborhoods worldwide.

What it does

SafeTrace is a safety-focused mobile app that connects communities through:

Real-Time Hotspot Alerts: Warns users of nearby crime zones using geolocation and in-app dialogs. Community Feed: A TikTok-style interface for sharing live streams and posts about local safety. Premium Subscriptions: Free users are limited to 2 posts; premium users (via RevenueCat) unlock unlimited posts. Engaging Notifications: OneSignal powers push notifications for post interactions and new content, while Perplexity generates dynamic messages for premium users. SafeTrace promotes safety and community engagement with a sleek, animated UI.

How we built it

We built SafeTrace using Flutter for cross-platform iOS and Android support. Key integrations include:

RevenueCat: Manages premium subscriptions for unlimited posts. OneSignal: Delivers push notifications and in-app dialogs for hotspot alerts, premium upsells, and subscription confirmations. Perplexity: Generates personalized notification messages for premium users. Agora RTC Engine: Powers live streaming with video recording. Firebase: Stores posts, user profiles, and videos, with Firestore for real-time data and Storage for media. FFmpeg: Transcodes live stream videos to ensure iOS playback compatibility. The TikTok-like feed uses the reels package, enhanced with animations for likes and comments.

Challenges we ran into

iOS Video Playback: Live streams recorded on iOS triggered AVPlayer errors (frameDuration issue). We resolved this by transcoding videos with FFmpeg to enforce a 30 FPS frame rate. Notification UX: Balancing push notifications and in-app dialogs required fine-tuning OneSignal and Perplexity integrations to ensure engaging, non-intrusive alerts. Monetization Design: Crafting a 2-post limit for free users while ensuring a seamless premium upsell experience was tricky but achieved with RevenueCat’s analytics.

Accomplishments that we're proud of

Robust Monetization: Implemented a 2-post limit with a premium subscription model using RevenueCat, driving conversions. Social Impact: Built real-time hotspot alerts that empower users to avoid dangerous areas, enhancing community safety. Innovative Notifications: Integrated Perplexity for AI-generated messages and OneSignal for dynamic push and dialog notifications. Polished UI: Created a TikTok-like feed with smooth animations, earning praise for design and usability. Cross-Platform Stability: Overcame iOS-specific video issues with FFmpeg, ensuring seamless playback on both platforms.

What we learned

Video Processing: Mastered FFmpeg for video transcoding to resolve iOS playback issues, deepening our understanding of media metadata. User Engagement: Learned how to balance push notifications and in-app dialogs for optimal user retention using OneSignal. AI Integration: Discovered the power of Perplexity for crafting personalized, engaging notification messages. Monetization Strategy: Gained insights into designing effective freemium models with RevenueCat’s analytics and subscription tools. Community Building: Realized the value of #BuildInPublic for feedback and motivation through social media engagement.

What's Next for SafeTrace

Enhanced Hotspot Analytics: Add heatmaps and predictive alerts using machine learning to identify high-risk areas. Social Features: Introduce group chats and verified safety reports to strengthen community trust. Global Expansion: Partner with local safety organizations to scale SafeTrace’s impact worldwide. Iterative Growth: Use RevenueCat analytics to optimize subscription tiers and test new monetization strategies (e.g., virtual currency for premium content). Viral Campaigns: Launch TikTok and Instagram campaigns to boost awareness and downloads, leveraging the #BuildInPublic community.

Built With

Share this project:

Updates