Outdoor recreation · Consumer social · Case study
LogFish: Fishing log and social app on iOS, Android and web
React Native app with GPS catch logging, Mapbox, clubs, leaderboards, a guide marketplace and Stripe payouts, backed by NestJS microservices.

- Client
- LogFish is a fishing logging and social platform for recreational anglers, guides, charter captains and commercial fishermen.
- Team
- Full-stack development team
- Timeline
- Ongoing development and maintenance
- Services
- Mobile app development, Web development, Cloud and DevOps, Enterprise software
- 7
- backend microservices
- 3
- platforms: iOS, Android and web, plus admin
- 11
- third-party integrations
- Live
- on the App Store and Google Play
In short
LogFish is a fishing log and community app where anglers record catches with GPS, photos and video, join clubs and leaderboards, and hire guides. Innovation Insight designed and built the whole system: React Native apps for iOS and Android with offline-first sync, a Next.js web platform, an admin content builder and seven NestJS microservices with Stripe, Apple and Google payments. It is live on the App Store and Google Play.
Where they started.
- Anglers wanted one place to log catches with photos, video and exact location, and to share them with clubs and leaderboards.
- Guides and charter captains needed to sell trips and get paid, which meant Stripe payouts plus Apple and Google in-app subscriptions.
- Fishing happens where there is no signal, so the app had to work offline and sync later.
- Photo and video uploads from phones needed a fast, cost-controlled media pipeline.
The approach.
- Built native iOS and Android apps in React Native with Redux-persist and Apollo offline support for an offline-first experience.
- Integrated Mapbox for live GPS tracking with geohash-based spatial search, and Meteoblue for weather at each fishing location.
- Designed a NestJS microservices backend (user, catch, boat, notification, payment, weather, community) behind a GraphQL gateway, with RabbitMQ for events.
- Implemented Stripe payments, subscriptions and payouts alongside Apple App Store and Google Play subscription APIs, with earnings dashboards for professionals.
- Built a media pipeline with S3 presigned uploads, Sharp image optimisation, FFmpeg video transcoding and CloudFront delivery.
- Delivered a Next.js web platform and an admin panel with a WYSIWYG guide editor, drag-and-drop page builder and targeting rules for in-app content.
What shipped.
- iOS and Android apps (React Native 0.76) with social login via Google, Facebook and Apple
- Next.js 15 public web platform with server-side rendering
- Next.js 16 admin panel with Quill editor, slide library and publishing workflow
- GraphQL API gateway and seven NestJS microservices
- Firebase push notifications, Mailchimp transactional email and Iterable campaign integration
- Stripe, Apple and Google subscription and payout systems
- AWS S3 and CloudFront media pipeline with FFmpeg transcoding
How the engagement ran.
Context
LogFish serves a broad fishing community: recreational anglers who want a record of every catch, clubs that run leaderboards, and professional guides and charter captains who want to sell trips. The product has to work on a boat with no signal, handle heavy photo and video uploads, and move money reliably. Innovation Insight designed and built the entire system from the ground up and continues to develop and maintain it.
What we built
- Catch logging with photos, video, species, measurements and precise location on Mapbox, plus boat management, favourite spots, Meteoblue weather at the location and statistics dashboards.
- Community features: clubs with invitations and admin controls, feeds, rich profiles linked to Instagram, Facebook, YouTube and TikTok, and achievement-based leaderboards.
- Monetisation: Stripe payments, subscriptions and payouts; Google Play and App Store in-app subscriptions; premium tiers with a catch paywall; earnings dashboards for guides.
- An admin panel with a Quill WYSIWYG editor, a drag-and-drop page builder built on dnd-kit, a reusable slide library, draft and publish states, analytics and targeting rules that deliver guides by screen, segment and trigger.
- Notifications through Firebase Cloud Messaging, Mailchimp transactional email, an in-app notification centre and Iterable campaign tracking.
Architecture and stack
| Layer | Technology | Why |
|---|---|---|
| Mobile | React Native 0.76, Redux with Redux-persist, Apollo Client, React Navigation, Mapbox, Vision Camera, Stripe SDK, react-native-iap, Firebase | One codebase for iOS and Android with offline caching and native camera, maps and payments |
| Web | Next.js 15 with Turbopack, React 19, Tailwind CSS 4, Apollo | Server-rendered public platform |
| Admin | Next.js 16, Quill, dnd-kit, Sharp, Radix UI, shadcn/ui | Content builder with image optimisation and HTML sanitisation |
| Backend | NestJS microservices, Apollo Server GraphQL gateway, RabbitMQ, MongoDB and MySQL | Domain isolation, asynchronous events and independent scaling |
| Media | AWS S3 presigned uploads, Sharp, FFmpeg, CloudFront | Fast, secure uploads and efficient delivery of images and video |
| Security | JWT with Passport, jose for Edge middleware, bcrypt, DOMPurify, NestJS Throttler | Stateless auth across mobile, web and admin with rate limiting |
How we worked
The backend is organised around an API gateway that authenticates each GraphQL request and routes it to the owning service over RabbitMQ. Each service keeps its own data store and publishes events, so a new catch can trigger notifications without coupling the catch and notification services. That structure lets the team deploy and scale services separately and keep faults contained.
On mobile, the team prioritised the realities of fishing: offline logging, battery-conscious GPS tracking, image compression before upload and lazy-loaded screens. Authentication supports Google, Facebook and Apple sign-in, and the same JWTs work across the mobile app, the web platform and the admin panel.
Scale and complexity
| Area | Detail |
|---|---|
| Services | API gateway plus user, catch, boat, notification, payment, weather and community services |
| Integrations | Stripe, Firebase, Mailchimp, AWS S3, Mapbox, Apple Store, Google Play, Iterable, Meteoblue, Google OAuth, Facebook SDK, Apple Auth |
| Media formats | JPEG, PNG, WebP, MP4, WebM, MOV with server-side transcoding |
| Client applications | iOS app, Android app, web platform, admin panel |
What this means for your project
Consumer apps that mix location, media, community and payments need a backend that can evolve feature by feature without downtime, and a mobile app that behaves well on poor networks. LogFish demonstrates both, along with the less glamorous parts that make an app sustainable: an admin content builder, analytics and campaign tooling.
Innovation Insight builds mobile products end to end, from store submission to the microservices behind them, and stays on as the maintenance and growth team when clients want continuity.
What changed.
- Live in production on the App Store and Google Play
- Offline-first catch logging with automatic synchronisation when connectivity returns.
- Guide-for-hire marketplace with integrated earnings and payouts for professional users.
- Independent scaling and fault isolation across seven domain services.
Questions about this project.
How does offline-first work in a React Native app?
State is persisted locally with Redux-persist and Apollo's cache, so users can log catches and browse loaded data with no signal. Mutations queue and replay when connectivity returns. It adds roughly two to three weeks to a typical mobile build.
Can you handle both Stripe and app store subscriptions in one app?
Yes. LogFish uses Stripe for payments and payouts to guides, and Apple and Google subscription APIs for in-app purchases, with webhook handling on the backend so entitlements stay consistent across all three.
What does a consumer app with social features and payments cost?
A first release with logging, feeds, clubs and one payment method typically falls in the $60k to $120k range over five to seven months. Marketplace payouts, video processing and an admin content builder extend that scope.