0,0
1024,0
0,end
1024,end
IMG:00
IMG:00
[kickavenue_hero]
KickAvenue
HDR:01
HDR:01
Back_to_Works

KickAvenue

Led the ground-up rebuild of KickAvenue, an authenticated marketplace for sneakers, apparels, and handbags carrying brands like Jordan, Yeezy, OFF-WHITE, and Nike. Migrated the aging native Android codebase to a modern Flutter application with Riverpod state management, delivering a faster, more maintainable, and visually refined experience across Android and iOS. The app serves tens of thousands of users with features like real-time product search, a make-an-offer bidding system, and seller listing tools.

Role:Product Engineer - Mobile
Tools:Flutter, Riverpod, Dart, Firebase
Date:2024-02-15
SEC:02
SEC:02

01 / The_Problem

The existing KickAvenue app was built on a legacy native Android stack that had accumulated years of tech debt. The UI felt outdated compared to modern marketplace apps, the codebase was difficult to maintain and iterate on, and there was no iOS counterpart — limiting the platform's reach. Performance bottlenecks in product browsing and checkout flows led to high drop-off rates.

The app needed more than a facelift — the entire foundation had to be rebuilt to support the pace the business demanded.

SEC:03
SEC:03

02 / The_Solution

CROSS_PLATFORM

Single Flutter codebase serving both Android and iOS, eliminating the need for separate native teams.

REACTIVE_STATE

Riverpod-driven state architecture with provider scoping for predictable data flow across complex marketplace screens.

DESIGN_OVERHAUL

Complete UI redesign with modern component library — improved product discovery, streamlined checkout, and refined brand identity.

PERF_OPTIMIZATION

Lazy loading, image caching, and optimized list rendering for smooth browsing across thousands of product listings.

Rebuilt the entire application from scratch using Flutter for cross-platform delivery and Riverpod for scalable, testable state management. The new architecture emphasizes clean separation of concerns, reactive data flows, and a design system that aligns with modern marketplace UX patterns.

[kickavenue_solution]
SYSTEM_MODULE_V4.02
SEC:04
SEC:04

03 / Technical_Recap

The architecture follows a feature-first modular structure with Riverpod providers handling async data, caching, and side effects. Repository pattern abstracts the API layer, making it trivial to swap data sources or add offline support. Navigation uses a declarative routing approach with deep link support for product sharing.

product_provider.dart
@riverpod
Future<List<Product>> productList(
  ProductListRef ref, {
  required String category,
  int page = 1,
}) async {
  final repository = ref.watch(productRepositoryProvider);
  final products = await repository.getProducts(
    category: category,
    page: page,
  );

  // Cache invalidation on pull-to-refresh
  ref.keepAlive();
  return products;
}
NAV:05
NAV:05
Next →DeCare

Command Palette

Search for pages and actions