Flutter App Kitsv1.0.0

Swapsy

Classifieds app kit to buy, sell and swap locally, with offers and counter-offers inside chat.

Swapsy screenshot 1

// overview

About Swapsy

Swapsy is a ready-to-run classifieds marketplace for your city. You get the mobile app (Flutter, Android and iOS), the website, the admin panel, the API and the background worker (Next.js, PostgreSQL). Put your own keys in .env, run docker compose up -d, finish the install wizard, and the marketplace is live with sample categories, ads, sellers and safe meetup spots.

What makes it different: buyers make offers and counter-offers in chat, swap one of their own items (plus cash) for yours, and meet at safe meetup spots. Sellers schedule boosts, and buyers get price-drop alerts. A scam-warning banner flags risky messages.

Live preview and demo app

  • Website and admin: open the live demo. Sign-in has one-click demo buttons (no passwords): Sign in as Maya (demo member), and Sign in as demo admin (read-only) on /admin.
  • Android app: download the demo APK
  • Documentation: read the full docs online (also in the download, as HTML and PDF)

Mobile app (Flutter)

  • Onboarding, area picker, sign-in with Google, Apple, phone number, email or as a guest
  • Home with categories, banners, featured ads near you and a weekly price-drop digest
  • Search with filters built from each category's own fields, list and map view, saved searches with alerts
  • Ad pages with photo gallery, seller trust badges, similar ads and a scam-safety checklist
  • Offers in chat: make, counter, accept or decline; offers expire on their own; accepted offers reserve the item
  • Swap offers: offer one of your live ads, with or without cash on top
  • Safe meetups: pick a police station or staffed public place, confirm the time, share your trip and check in
  • Favourites with price-drop alerts; follow sellers
  • 7-step posting wizard: category, custom fields, photos, price and swap options, location, preview, publish
  • My ads: live, pending, rejected, expired, sold and drafts; mark sold, renew, edit and see stats
  • Boosts and packages with a schedule (start time and daily bump time)
  • Seller profiles, ratings and reviews; ID verification and the Verified badge
  • Notifications inbox, help centre, safety tips, settings, data export and account deletion; light and dark themes

Website (Next.js)

  • Home, search with list and map, ad pages, seller profiles, categories, safe spots, pricing, blog, help and legal pages
  • Account area: dashboard, my ads, chats with offers and meetups, favourites, saved searches, notifications, packages and payments, verification, settings
  • Post an ad from the browser; Stripe, PayPal, Razorpay or Flutterwave checkout for boosts and packages
  • Works inside an iframe (one-click demo sign-in without third-party cookies)

Admin panel

  • Dashboard; ad moderation queue with approve or reject with a reason; reports with report reasons
  • Categories with a custom field builder; cities and areas; safe meetup spots on a map
  • Users, ID verification review, staff roles and permissions
  • Packages, payments, and a boost calendar
  • Banners, blog, FAQ, safety tips, push campaigns and e-mail templates
  • Settings for brand, currency and units, payment gateways, maps and keys
  • A Setup check that tests every key and service

Built to be easy to own

  • Only your keys: every outside service has a working default. Without payment keys, boosts and packages run in a clearly labelled demo mode; without SMTP, e-mails go to the log; files go to the bundled MinIO storage; maps and address search use OpenStreetMap.
  • One command: Docker Compose starts the website, API, worker, PostgreSQL and file storage; migrations run on every start. Optional automatic HTTPS with Caddy.
  • Install wizard creates your admin account, sets your marketplace name, currency and units, and can load the sample marketplace.
  • Rename tool: one command changes the app name, the Android / iOS package id, the brand colour, the website font and the icon.
  • Clean code: flutter analyze shows 0 issues; Riverpod state, go_router navigation, lazy .builder lists; TypeScript strict mode with Biome on the web side; automated API and browser tests.
  • Documentation for beginners: server setup, Firebase, the app, payments, push, maps, e-mail, renaming, icons and colours, every key explained, file structure, publishing to the stores, FAQ.

Requirements

  • A Linux server (2 CPU, 4 GB RAM) with Docker, and a domain name
  • Flutter 3.44 or newer with Android Studio; a Mac with Xcode for iOS builds (iOS 15 or newer)
  • A free Firebase project (sign-in and push notifications)
  • Node.js 22 for the rename tool

Services you can connect (all optional except Firebase)

What is in the download

  • swapsy_mobile_flutter/ — the app
  • swapsy_web_nextjs/ — website, admin, API and worker
  • deploy/ — Docker Compose stack and .env.example; tools/ — rename tool
  • docs/ — documentation (HTML and PDF), licence and changelog

Preview-only

The item photos on the live demo and in the screenshots are for preview only and are not included; the download has placeholder images in their place. The sample ads, people and reviews are fictional. The bundled font, Poppins, is under the SIL Open Font License (the licence file is included).

// features

What's included

  • Flutter app for Android and iOS, a website, an admin panel, the API and a background worker
  • Offers and counter-offers inside chat; accepted offers reserve the item
  • Swap offers: trade one of your own ads, with or without cash on top
  • Safe meetups at police stations or staffed public places, with check-in
  • Search with category filters, map view and saved searches with alerts
  • Price-drop alerts on favourites, seller ratings and ID verification
  • Scheduled boosts and packages, paid with Stripe, PayPal, Razorpay or Flutterwave
  • Admin moderation queue, custom field builder per category and a Setup check
  • One Docker command to install, one command to rename and rebrand

Compatibility & tags

Changelog

  1. v1.0.0 · 2026-10-07

    • First release.

// faq

Questions about Swapsy

Yes. You get the Flutter app code, the Next.js website, admin panel and API, the database schema and migrations, the Docker setup, the rename tool and the documentation. You run it on your own server with your own Firebase project.

Yes. The [live demo](https://swapsy-demo.apps.codememory.com) has one-click demo sign-in for each role, no passwords needed. You can also [download the Android demo app](https://swapsy-demo.apps.codememory.com/downloads/swapsy-demo.apk).

Yes. Every outside service has a working default: payments run in a clearly labelled demo mode, e-mails go to the log and files go to the bundled storage. Add each key when you are ready.

A Linux server (2 CPU, 4 GB RAM) with Docker and a domain name, Flutter 3.44 or newer with Android Studio, a Mac with Xcode for iOS builds, and a free Firebase project for sign-in and push.

Yes. Our [app kit install](/services/app-kit-install) service sets it up on your server, and [Flutter App from a Kit](/services/flutter-app-customisation) rebrands the apps and publishes them to the App Store and Google Play under your name.