Skip to content
adit9852Public

About

Pepto is a sample food-delivery mobile application that demonstrates how to build a polished, production-style UI for both Android and iOS from one codebase using Kotlin Multiplatform (KMP) and Compose Multiplatform (CMP).

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Pepto — Food delivery, reimagined. Kotlin Multiplatform · Compose · Android & iOS

🍲 Pepto

A modern, aesthetic food‑delivery app built with Kotlin Multiplatform and a single, shared Compose Multiplatform UI for Android & iOS. 🚀


✨ About

Pepto is a Zomato‑style food‑delivery front end with a clean, modern interface — a gradient location header, search bar, food categories, a "Popular near you" carousel and restaurant cards with ratings, delivery times and prices. It loads data from an API and caches it in a local SQLite database, so content stays available offline and remote/local data stay in sync.

Features

  • 🎨 Modern, aesthetic food‑delivery UI (Zomato‑style)
  • 📱 One shared Compose UI across Android & iOS
  • 📵 Offline capability (SQLite cache)
  • 🌓 Dark mode
  • ✨ Pull‑to‑refresh & shimmer loading

The network API is a dummy (fixed) response, statically hosted here.

📱 Preview

Pepto runs from the same Compose codebase on both platforms. Here's the home feed on Android and the restaurant detail screen on iOS:

Android
Home feed
iOS
Restaurant detail
Pepto home screen on Android Pepto detail screen on iOS

💡 The images above are crafted mockups of the actual screens. To swap in real screenshots or an inline demo video, see Adding your own demo media.

▶️ Demo video

Add your Android / iOS demo video here — see the guide below.


🛠️ Built with

🚀 Setting up the project

  • Refer to the "Setting up environment" section of the Compose Multiplatform template.
  • Clone this repository and open it in Android Studio (Electric Eel or newer).
  • Build the project 🔨 and confirm everything works.
  • Run the app:
    • Select androidApp as the run configuration → run the Android app.
    • Select iosApp (or use Xcode) → run the iOS app.

🗂️ Project structure

This Compose Multiplatform project includes three modules:

Module Description
shared Kotlin module with all shared logic and the shared Compose UI. The app's root @Composable lives in shared/src/commonMain/kotlin/App.kt. Builds into an Android library and an iOS framework.
androidApp Builds the Android application; depends on shared as a regular Android library.
iosApp Xcode project that builds the iOS application; depends on shared as a CocoaPods dependency.

🎥 Adding your own demo media

Want real captures instead of (or alongside) the mockups? Here's the full recipe.

Hero banner (the front image):

  • It's readme-media/graphic.svg — edit the text/colours directly, or replace the <img src="readme-media/graphic.svg" .../> line at the top with your own image.

Screenshots:

Platform Capture command
Android adb exec-out screencap -p > readme-media/pepto-android.png
iOS (Simulator) xcrun simctl io booted screenshot readme-media/pepto-ios.png

Then point the <img> tags in the Preview table at your new .png files.

Demo video (this is what plays inline):

  1. Record the screen
    • Android: adb shell screenrecord /sdcard/demo.mp4 → adb pull /sdcard/demo.mp4
    • iOS Simulator: xcrun simctl io booted recordVideo demo.mov
  2. GitHub does not play repo‑hosted .mp4 files inline. Instead, open any issue / PR / the README editor on github.com and drag‑and‑drop your video into the text box.
  3. GitHub uploads it and inserts a https://user-images.githubusercontent.com/…​.mp4 link — paste that under ▶️ Demo video and it renders as an inline player. 🎬

🤝 Contribute

Contributions are always welcome! See Contributing Guidelines.

💬 Discuss

Questions, doubts or opinions? You're always welcome to start a discussion.

🙏 Acknowledgements

📄 License

Copyright 2026 Aditya Kumar

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

Pepto is a sample food-delivery mobile application that demonstrates how to build a polished, production-style UI for both Android and iOS from one codebase using Kotlin Multiplatform (KMP) and Compose Multiplatform (CMP).

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages