Description
The complete operating system for a wholesale food supplier.
Crately is a 3-in-1 bundle — a Next.js admin panel + customer
web + REST API, a Flutter customer app, and a Flutter driver app. Single
supplier, many restaurant customers. Eight AI features ship enabled out of the
box.
Live demo:
https://crately.devsnack.dev
Demo credentials (password is demopassword for
all):
-
Supplier admin (web admin panel) —
admin@demo.com -
Restaurant owner (customer web + customer Flutter app) —
owner@demo.com -
Delivery driver (driver Flutter app) —
driver@demo.com
Demo APKs:
https://drive.google.com/file/d/1so6tMscKR2dTHizTq2BpMnvIUooFdwQy/view?usp=sharing
(restaurant owner) ·
https://drive.google.com/file/d/1-IzbfN5J2wYdOijkC4jIkOodQ8RPwJ2n/view?usp=sharing
(delivery driver)
Wholesale ordering, B2B-grade
-
Account-level pricing — per-customer SKU prices, tier discounts, custom
overrides - Credit terms — NET-15, NET-30, COD, prepaid; per-account configurable
- Delivery cutoff times per zone, owner-approval threshold for large orders
- Standing orders — recurring weekly patterns, auto-submit with reminder
- Multi-location restaurant chains — chains pick a location at checkout
- Quality credits applied to invoices (not refunds)
- FIFO/FEFO inventory batches with expiry awareness
5 AI hero features + 3 secondary
-
AI Order Predictor — pre-filled next order from history +
seasonality -
AI Recipe → Order Converter — chef pastes a recipe, AI
returns priced ingredients -
AI Quality Audit — driver photos analysed on delivery;
flagged items auto-credit -
AI Smart Replenishment — nightly demand forecast becomes a
draft purchase order -
AI Credit Risk Monitor — flags accounts before they go bad
based on AR + payment patterns -
AI Substitution Engine — picks 3 closest in-stock
alternatives priced for the customer -
AI Demand Insights — weekly Sunday digest (top movers,
anomalies, pricing opportunities) -
AI Description Generator — admin generates product copy
from a few keywords
Realtime delivery tracking
Driver streams GPS every 15s. Customer’s order screen shows a live Google Map
with the driver pin moving — Pusher Channels for sub-second updates, polling
fallback for graceful degradation.
Stripe pay online
One-tap “Pay $X online” on open invoices. Stripe Checkout opens in the system
browser, returns to the Flutter app via deep link (crately://),
invoice flips to PAID via webhook.
Real KPI dashboard
Today’s orders + revenue, 7-day chart, AR aging buckets, AI alerts, top
accounts this month, recent activity feed — every section pulls from the live
data, every card deep-links to its detail screen for fast triage.
FCM push notifications
Order status transitions + Stripe payment success automatically push the right
person. Tapping a notification deep-links into the app on the right screen.
Industrial Harvest design system
Material 3 token set with Deep Forest Green primary + Sage Cream surface.
Change one CSS variable and one Dart variable to rebrand the whole app. Sora +
JetBrains Mono typography. Custom SVG mark + raster pipeline regenerates every
platform icon size with one command.
B2B credit + AR aging
Invoices issued per order, due-date computed from snapshotted credit terms,
5-bucket AR aging dashboard, statements PDF (React-PDF), payments table with
Stripe + manual reconciliation, quality credits applied to oldest open
invoice.
Tech stack
| Layer | Tech |
|---|---|
| Web framework | Next.js 16 (App Router) + React 19 |
| Database | PostgreSQL via Drizzle ORM |
| Web auth | Auth.js v5 (Credentials provider) |
| Mobile auth | HS256 JWT, 30-day TTL |
| Background jobs | Inngest (13 cron + event-triggered functions) |
| Mobile | Flutter 3.x + Riverpod 3 + GoRouter + Dio |
| AI providers | OpenAI + Google Gemini (dual-keyed, server-only wrapper) |
| Payments | Stripe Checkout + webhook |
| Realtime | Pusher Channels + polling fallback |
| Push | Firebase Cloud Messaging |
| Resend + React Email templates | |
| Storage | UploadThing (with local-disk fallback) |
| Rate limiting | Upstash Redis (with in-memory fallback) |
| Maps | Google Maps SDK (iOS + Android + JS) |
| Charts | Recharts |
| React-PDF | |
| Styling | Tailwind v4 + Industrial Harvest M3 tokens |
What’s included
-
Full source for all three apps (
crately_web/,
crately_app/,crately_driver/) - Drizzle schema + 5 migrations (40+ tables)
-
Industrial Harvest design system (Tailwind + Flutter
ThemeData) -
7 React Email templates (order confirmation, invoice issued, quality credit,
password reset, abandoned cart, pre-cutoff, standing-order pre-submit) - 2 React-PDF templates (invoice, statement)
-
SVG brand mark + raster pipeline (one command regenerates every platform’s
icon sizes) -
Quick-start HTML + full buyer documentation HTML + production deploy guide +
screenshot guide - 6 months email support
- Lifetime updates
Quick setup
- Extract zip,
cd crately_web && pnpm install -
Create
crately_web/.env.localwithDATABASE_URL,
AUTH_SECRET,NEXT_PUBLIC_APP_URL pnpm db:migrate && pnpm dev→http://localhost:3000- Register your first admin at
/register, then build your catalog + customer accounts via the admin panel -
In separate terminals:
cd crately_app && flutter run
--dart-define=API_BASE=http://localhost:3000
and same forcrately_driver -
Add Stripe / Pusher / Firebase / Google Maps keys to
.env.localas you turn each feature on -
Deploy: push to GitHub, import into Vercel, set env vars, done —
vercel.jsonhandles the build command
Requirements
- Node 20+
- pnpm 10+
- Flutter 3.x
- A Postgres URL (Neon free tier works for development and small production)
- A Vercel account (free tier works)
-
Apple Developer Program ($99/yr) + Google Play Console ($25 one-time) for
store distribution -
Optional accounts, all free tier sufficient for early demo: Stripe (test),
Pusher Channels (100 conn / 200K msg/day), Firebase (Spark plan), Resend
(100/day), Upstash (10K cmds/day), Google Cloud (Maps $200/month free
credit), OpenAI or Gemini (your spend)
Support
Email:
devsnack26@gmail.com
WhatsApp:
+855 96 741 3911
Bundled 6 months per CodeCanyon standard. Custom development is hourly — same
email.
Hosting (Vercel), database (Neon / your choice), third-party accounts (Stripe,
Pusher, Firebase, Resend, etc.) are the buyer’s responsibility. The bundle is
source code, not a managed SaaS.
Changelog
1.0.0 · initial release
- Three apps (Next.js + 2 Flutter)
- 8 AI features wired against OpenAI + Gemini dual provider
-
Stripe + Pusher + Firebase Cloud Messaging + Resend + UploadThing + Upstash
+ Google Maps — all optional, all gracefully no-op when unconfigured - Industrial Harvest design system + custom brand mark
- Admin dashboard with real KPIs, AR aging, AI alerts, recent activity
- Static marketing landing (edge-cached) + 13 Inngest background jobs
Crately is a software package for wholesale food suppliers that sell to restaurants and other business customers. It includes a web-based admin panel, a customer ordering app, and a driver app for deliveries. Suppliers can manage products, customer-specific prices, orders, invoices, credit terms, inventory, and delivery schedules. Restaurant customers can place repeat or location-based orders, while drivers can receive delivery tasks and share live location updates. It also includes optional AI tools for order suggestions, demand forecasting, substitutions, and quality checks. It is for food distributors operating a single-supplier B2B delivery business.



