Wancana adalah aplikasi mobile untuk planning aktivitas bareng teman, mulai dari berbagi lokasi, mengatur todo pribadi, bikin agenda grup, voting event, sampai split bill setelah kegiatan selesai.
Project ini terdiri dari backend API dan mobile frontend. Backend menangani data, autentikasi Firebase, notifikasi, lokasi, grup, event, split bill, receipt scanner, dan chat support. Mobile app menjadi client utama untuk user dengan flow onboarding, login, map, calendar, todo, group, split bill, notification, dan settings.
| Folder | Stack | Description |
|---|---|---|
BE_Wancana |
Express, TypeScript, Prisma, PostgreSQL | Backend API untuk business logic, database, Firebase auth, Socket.IO, notification, upload, dan AI features |
Mobile_Wancana |
Expo, React Native, TypeScript | Mobile frontend untuk Android/iOS dengan Mapbox, Firebase Auth, notifications, dan React Query |
- Location Sharing - update lokasi user, lihat lokasi teman, dan toggle sharing.
- Todo & Calendar - todo personal, calendar view, priority, search, dan deadline reminder.
- Groups - create group, invite member, role management, avatar upload, leave/disband group.
- Wancana Events - buat agenda grup dengan lokasi, voting, participant tracking, dan status event.
- Split Bill - create bill, assign participant, track payment, dan detail bill per grup/event.
- Receipt Scanner - scan struk dengan Gemini lalu convert hasilnya jadi split bill.
- Notifications - push notification, notification list, read state, dan user settings.
- Chat Support - AI support chat dengan session history.
Jalankan backend terlebih dahulu, lalu arahkan mobile app ke URL backend lewat EXPO_PUBLIC_BACKEND_URL.
cd BE_Wancana
npm install
cp .env.example .env
npm run prisma:generate
npm run prisma:migrate
npm run devBackend default berjalan di http://localhost:3000 dan dokumentasi API tersedia di http://localhost:3000/api-docs.
cd Mobile_Wancana
npm install
cp .env.example .env
npm startUntuk Android native build:
npm run androidBackend membutuhkan PostgreSQL, Firebase service account, Gemini API key, Redis opsional, dan S3-compatible storage untuk upload.
Mobile membutuhkan backend URL, Supabase config, Mapbox access token, Firebase web config, dan Google web client ID.
Detail variable ada di masing-masing file:
BE_Wancana/.env.exampleMobile_Wancana/.env.example
| Area | File |
|---|---|
| Backend README | BE_Wancana/README.md |
| Frontend README | Mobile_Wancana/README.md |
| Backend API Docs | http://localhost:3000/api-docs |
BE_WancanadanMobile_Wancanapunya git repository masing-masing.- Jangan commit file
.env, Firebase service account, keystore, atau secret lokal lain. - Jalankan backend sebelum membuka fitur mobile yang butuh API, Mapbox, Firebase Auth, push notification, atau Socket.IO.