Shindig — Cross-Platform Event Discovery

Shindig — Cross-Platform Event Discovery

posted 1 min read

Shindig is a cross-platform event discovery app built with Kotlin Multiplatform (KMP) and Compose Multiplatform. One codebase runs on both Android and iOS with 80% shared code.

What It Does

  • Discover events happening around you from multiple aggregated sources
  • Create and manage your own events
  • Book and join events in seconds
  • Subscribe to Shindig Spark for premium features via in-app purchases

Tech Stack

  • Kotlin Multiplatform — shared business logic across Android and iOS
  • Compose Multiplatform — shared UI layer
  • Koin — dependency injection
  • Ktor — networking
  • DataStore — local storage
  • PostHog — analytics and feature flags
  • GCP Secret Manager — secrets management (no hardcoded keys)
  • GitHub Actions — CI/CD pipeline

Recent Milestones

  • iPadOS 26 support with auth sheet crash fixes
  • In-app purchases live (Shindig Spark subscription)
  • Cross-product analytics dashboard with PostHog
  • City availability survey for out-of-market expansion
  • Apple App Store review compliance (sign-in UX improvements)
  • Full security audit — hardcoded secrets removed, encrypted token storage
  • iOS bundle separation audit complete

Why KMP?

We chose Kotlin Multiplatform because event discovery has complex business logic (geo-spatial search, event aggregation, user preferences) but relatively standard UI patterns. KMP lets us share 80% of the code while keeping native performance and platform-specific UX where it matters.

Sub-100ms geo-spatial search. One codebase. Two platforms. No compromises.

What's Next

  • Expanding to new cities (survey-driven market entry)
  • AI-powered event recommendations
  • Firefly virtual economy — earn and spend currency across the platform
  • Enhanced social features

Built by Mathew Dostal — Fractional CTO & Principal Architect based in Austin, TX.

More Posts

Breaking the AI Data Bottleneck: How Hammerspace's AI Data Platform Eliminates Migration Nightmares

Tom Smithverified - Mar 16

Type-safe Kotlin Multiplatform i18n: auto-convert Android strings to cross-platform translations.

Ismoy - Oct 14, 2025

Implementing Cellular Redundancy: Cross-Cloud Failover with AWS Transit Gateway and Azure ExpressRou

Cláudio Raposo - May 5

Top 4 React Native Image Caching Libraries in 2026

prospero_x - May 19

Building a Zero-Cost AI Feature in Flutter with Gemma 4 + Firebase

Carol - May 11
chevron_left

Related Jobs

View all jobs →

Commenters (This Week)

2 comments
1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!