# đļ Bini Suto (āĻŦāĻŋāύāĻŋ āϏā§āϤā§) - Studio Booking App Overview
Bini Suto is a **Flutter mobile application** designed to manage studio recording bookings. It is built to support a bilingual user base, featuring both **Bengali and English** languages, and utilizes a robust **two-stage booking workflow**.
## ⨠Core Features
### 1. User Authentication & Profile
* **Registration:** Supports registration using an **email/password** combination, including a field for a **referral code** (daily codes).
* **Login & Session:** Standard email/password login with secure **session management** using local storage.
* **Profile Management:**
* View and update **Name, Email, Phone, and Address**.
* Option to update **Password**.
* **Profile Picture** upload (via camera or gallery) with real-time updates.
### 2. Two-Stage Booking System
The app enforces a sequential booking process to ensure proper studio scheduling.
#### **Stage 1: Track Record Time Setup (āĻā§āϰā§āϝāĻžāĻ āϰā§āĻāϰā§āĻĄ āϏāĻŽāϝāĻŧ āϏā§āĻāĻāĻĒ)**
* **Availability:** Always open for booking.
* **Selection:** Users select a date from the **Calendar** and choose a **Song Type** (instead of specific time slots).
* **Post-Payment Actions:** Once payment is confirmed, the user can then input:
* **Song Name (āĻāĻžāύā§āϰ āύāĻžāĻŽ)**
* **Song Scale (āĻāĻžāύā§āϰ āϏā§āĻā§āϞ)**
* **Admin Assignment:** The administrator can assign specific booking times, which are visibly marked in **orange** on the user interface.
#### **Stage 2: Dubbing Time Setup (āĻĄāĻžāĻŦāĻŋāĻ āϏāĻŽāϝāĻŧ āϏā§āĻāĻāĻĒ)**
* **Unlock Condition:** This stage is **locked** until the corresponding Track Recording booking is **fully paid and confirmed**.
* **Selection:** Users select a date from the **Calendar** and choose a **Time Slot** from the following options:
* 10 AM, 11 AM, 12 PM, 1 PM, 2 PM, 4 PM â 7 PM.
* **Post-Payment Display:** After payment, a **Queue Number** is displayed, provided no published links (YouTube/Facebook) are yet available for the session.
### 3. Dashboard Functionality
The central hub for managing and tracking bookings.
* **Booking Overview:** Displays cards for **both Track Recording and Dubbing** sessions with their current status.
* **Payment Status:** Clear indicators for **Paid/Unpaid** status.
* **Queue Management:** Shows the **Queue Number** for paid Dubbing bookings.
* **Published Links Section:**
* If the recorded content is published, the **YouTube link** and/or **Facebook link** will be displayed.
* **Crucially, the published links replace the Queue Number** when they become available.
* **Navigation:** Quick access to the **Profile** and **Logout** functionality.
### 4. Booking Workflow Summary
1. Select a **Date** from the calendar.
2. Choose the appropriate **Time Slot or Song Type**.
3. Fill out the booking form (**Name, Email, Phone, Address**).
4. Booking is saved with an **"Unpaid"** status.
5. Upon payment confirmation:
* **Track Record:** Unlocks the song details form.
* **Dubbing:** Shows the queue number (unless links are published).
## đą Platform & Technical Support
* **Platform:** Android (minimum SDK 21).
* **Branding:** Custom app icons and adaptive icon support are configured for a polished look.
Developed by - Avradeep Nayak [In collab with Bini Suto].