OneCall - Multilingual Concierge App Development

Замовник: AI | Опубліковано: 22.12.2025

1. Project Overview Project Name: OneCall Concept: OneCall is a concierge-style mobile application designed to help users quickly get assistance without stress or complexity. The user opens the app, writes their need in a single text field, and is immediately taken care of through a ticket (case) + real-time chat with the OneCall team. This is NOT a marketplace. The app is client-first. Service providers are managed internally by admins only. 2. Target Platforms Android iOS Preferred stack (open to proposals): Flutter / FlutterFlow Firebase (Authentication + Firestore) The application must be: performant scalable cleanly structured ready for Google Play Store and Apple App Store publication 3. Supported Languages (Mandatory) The UI must support three languages: French (default) Dutch English Behavior: Automatic detection based on device language Manual language switch (optional but recommended) Chat messages must NOT be auto-translated. 4. App Entry Flow (Very Important) Splash / Entry Screen At app launch: OneCall logo + slogan Then two choices: I need help (PRIMARY action) I am a service provider (SECONDARY action) The client path must be visually dominant. 5. User Roles Client (Main Focus) Clients can: Continue as Guest (anonymous login) Log in via email Create a request View their own requests Chat with OneCall Use quick contact buttons: WhatsApp Phone call Clients cannot: Close tickets Change ticket status See other users’ tickets See service providers list Admin (OneCall Team) Admins can: View all tickets Chat with clients Change ticket status: Open In progress Closed Close tickets Use quick reply templates Manage service providers (internal use only) Admin access can be: Inside the same app (role-based) Or a separate admin panel 6. Client User Flow (Priority) Landing Page (Client) Large text input: “Describe your need…” Buttons: Continue as Guest Log in Quick buttons: WhatsApp OneCall Call OneCall On submit: A ticket is created automatically The text becomes the first chat message User is redirected directly to the chat My Requests List of user’s tickets Visible status: Open In progress Closed Access to chat Button: “New request” Chat Screen Real-time chat Message history Quick contact buttons (WhatsApp / Call) If ticket is closed: Input disabled Message: “This case is closed” 7. Service Provider Flow (Secondary – Not Public) Service providers can: Submit their services via a simple form: Name Phone Services offered Areas covered Submission goes to admin for review Providers are NOT publicly visible. This is not a marketplace. 8. Admin – Service Provider Management (Internal Tool) Admins must be able to: Add / edit / disable service providers Assign multiple categories Assign areas/regions Add internal notes Internal rating (for internal use only) Search providers by: Category Area Name Notes Providers are used as an internal directory to respond quickly to client requests. 9. Admin – Quick Replies Admins should have: Predefined chat response templates Editable responses Multilingual versions (FR / NL / EN) Quick insertion into chat 10. Database Structure (Expected) Collection users role (client / admin) createdAt isAnonymous preferredLanguage Collection tickets createdAt createdBy (user UID) status (open / in_progress / closed) subject lastMessageText lastMessageAt Subcollection messages senderId senderRole text createdAt Collection providers (Admin only) name phone services (categories) areas internalNotes internalRating isActive 11. Authentication Anonymous login (guest) Email login Google / Apple optional 12. Notifications (Optional but appreciated) Push notification when: Admin replies Ticket status changes Security Requirements Clients can only access their own tickets Admins can access all tickets and providers Only admins can: Change ticket status Close tickets Manage providers 13. Deliverables Full source code Firebase access Android build (APK or AAB) iOS build (TestFlight or archive) Basic documentation: How to add admins How to manage providers How to publish the app 14. Developer Profile Requested We are looking for a serious and experienced developer with previous experience in: Firebase Chat systems Ticket-based applications Clean UX and simplicity are critical. Final Important Note The client experience must remain extremely simple. Any feature that complicates the main user flow must be hidden behind admin or secondary screens.