← All projects
Mobile · API

Zipp.

On-Demand Parcel Delivery

A mobile marketplace connecting parcel senders with drivers across Lithuania. The Fastify backend manages delivery orders and price proposals, while Socket.IO carries live driver locations and negotiation updates. Stripe Connect handles upfront payments and driver payouts, with sender and driver roles available in a single account.

My role

I independently built the sender and driver mobile experience, Fastify backend and PostgreSQL database, including order management, live tracking, price negotiation and Stripe Connect payments and payouts.

Explore the project
Selected contributions

Engineering
highlights.

Technologies

React NativeExpoExpo RouterTypeScriptNativeWindZustandTanStack Queryi18nextFastifyTypeBoxDrizzle ORMKyselyPostgreSQLSocket.IOBunStripe ConnectMapboxSupabaseFirebase (FCM)Expo NotificationsNodemailerSharpArgon2
01

A delivery flow for both sides

Connected parcel details, map-based pickup and delivery locations, driver discovery and order status in one application with switchable sender and driver roles.

02

Negotiating a delivery price

Used Socket.IO to carry price proposals and decisions between drivers and senders, so both sides can agree on a price within the order flow.

03

Tracking an active delivery

Streamed driver locations to the sender over Socket.IO, giving the order screen a live view of the parcel’s journey.

04

Payments and driver payouts

Integrated upfront card payments with Stripe Connect accounts and driver payouts, connecting the delivery marketplace to its payment lifecycle.

05

Preparing drivers to accept orders

Connected vehicle registration and bank-account setup to driver onboarding, with earnings and order history available after deliveries.

06

Social & Email Authentication

Google and Microsoft OAuth plus email + password with Argon2 hashing, email verification and SMS/email password reset.

07

Push Notifications

Real-time alerts for order events, price proposals and delivery status via Expo Notifications and Firebase Cloud Messaging.

08

History & Earnings

Drivers track completed and pending earnings; senders see their full order and payment history.

09

Type-safe API

Fastify with TypeBox schemas validating every request/response over Drizzle + Kysely on PostgreSQL.

10

Bilingual & Profile

Full EN / LT localization with i18next, plus profile editing, help center and in-app suggestions.