SummitUp — Trip Booking & Gear Rental
A hiking-focused marketplace to book guided trips, rent gear, and leave reviews.
SummitUp — Trip Booking & Gear Rental
Overview
SummitUp helps outdoor enthusiasts book guided trips, rent hiking gear, and review experiences. It lists mountains across Indonesia with packages and rentals. I worked on the mobile app (Flutter + BLoC) and backend (Next.js + SQL), ensuring an end‑to‑end flow.
Objectives
- Full‑stack solution for trip booking and gear rentals.
- Secure payments with Midtrans.
- Real‑time booking & availability tracking.
- Scalable backend with Next.js and SQL.
Features
- ⛰ Mountain Listings across Indonesia.
- 🎒 Gear Rental integrated into the booking flow.
- 📅 Trip Booking with real‑time availability.
- 💳 Midtrans payments (cards, e‑wallets, bank transfer).
- 🔄 Order & Booking Management for users.
- ⭐ Reviews & Ratings for trips, guides, and gear.
- 📜 Transaction History with invoices.
Tech Stack
See stack summary below.
Target Users
- Hikers & Adventure Enthusiasts — Book guided trips, rent gear, and explore mountains.
- Trip Organizers — Manage bookings, update availability, process payments securely.
- Gear Rental Providers — List equipment, track rentals, and handle reviews.
Challenges & Solutions
- Payment gateway integration
Solution: Midtrans API with real‑time verification and automatic confirmations. - Accurate, real‑time trip availability
Solution: DB polling and caching to keep data fresh without heavy queries. - Smooth end‑to‑end booking UX
Solution: BLoC for predictable state and optimized API responses.
Results
- 100+ — Successful bookings processed via Midtrans.
- 3 Payment Methods — Cards, e‑wallets, and bank transfers.
- 90% — Users completed bookings without issues.
Learnings
Strengthened skills in payment gateways, Next.js backend, and structured state management with BLoC.
Tech Stack
- Flutter (Dart) - Mobile App
- BLoC - State Management
- Next.js - Backend
- SQL - Database
- Midtrans - Payment Gateway
- Firebase Authentication - Secure Login
- Dio - API Communication
- Jetstream & Laravel Sanctum - Backend Auth