SummitUp - Trip Booking & Gear Rental

A mountain trip booking app with integrated payment gateway, rental services, and user reviews.

SummitUp - Trip Booking & Gear Rental

Timeline

Q2 2024 - Q3 2024

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 - User Authentication (Backend)

Overview

SummitUp is a hiking-focused marketplace that helps outdoor enthusiasts book guided trips, rent hiking gear, and leave reviews. The platform lists mountains across Indonesia, each offering various trip packages and equipment rentals. Users can book trips, make secure payments via Midtrans, and manage their hiking plans seamlessly. I worked on both the mobile app (Flutter + BLoC) and backend (Next.js + SQL), ensuring a smooth end-to-end experience.

Features

β›°

Mountain Listings

Explore detailed hiking destinations across Indonesia.

πŸŽ’

Gear Rental System

Rent hiking equipment for trips directly in the app.

πŸ“…

Trip Booking System

Book guided hikes with real-time availability tracking.

πŸ’³

Integrated Payment Gateway

Secure transactions using Midtrans for credit cards, e-wallets, and bank transfers.

πŸ”„

Order & Booking Management

Users can view, cancel, or reschedule trips and rentals.

⭐ User Reviews & Ratings – Leave feedback on trips, guides, and rented gear.

πŸ“œ

Transaction History

Track past bookings and payments with detailed invoices.

Objectives

  • β€’Develop a full-stack solution for booking mountain trips and renting hiking gear.
  • β€’Implement a secure payment gateway using Midtrans for seamless transactions.
  • β€’Enable real-time booking & availability tracking for trips and rentals.
  • β€’Ensure a scalable backend with Next.js and SQL for handling transactions and user data.

Challenges & Solutions

Challenge 1

Handling secure transactions with a payment gateway.

Solution

Integrated Midtrans API with real-time payment verification & automatic booking confirmation.

Challenge 2

Ensuring real-time trip availability updates.

Solution

Implemented database polling and caching to keep availability accurate without excessive queries.

Challenge 3

Synchronizing backend & frontend for a smooth booking experience.

Solution

Used BLoC for structured state management and optimized API response times.

Results

100+

Successful bookings processed via Midtrans.

3 Payment Methods

Supports credit cards, e-wallets, and bank transfers.

90%

Users completed their bookings without issues. (The remaining 10% probably changed their minds mid-hike.)

Key Learnings

Building SummitUp strengthened my expertise in payment gateway integration, backend development with Next.js, and managing state using BLoC. Handling real-time trip bookings and transactions required deep coordination between the frontend and backend, reinforcing my problem-solving skills in full-stack development.