Skip to the article
Aniq-UI

Food StudioThe staff dashboard

The staff dashboard

What the back office does: the overview, orders and the kitchen's queue, the menu, categories, customers, the homepage editor, the AI studio and assistant, the team and roles, and the restaurant's settings.

For the Full Stack package

Pages

Every page exists in English under /en and in Arabic under /ar. The dashboard opens at /en/dashboard, after the sign-in at /en/auth/login.

Sidebar itemPathWhat it does
Overview/en/dashboardToday's or yesterday's revenue, orders, average order and what is preparing, the revenue by hour, the kitchen's queue, the category mix, recent orders, the dishes that cannot be ordered and the most popular dish.
Orders/en/dashboard/ordersEvery order, beside the one selected.
Menu/en/dashboard/products/allAll dishes, featured, best sellers and archived dishes, and the dish form with its AI studio.
Categories/en/dashboard/categories/allThe menu's sections, and the archived ones.
Customers/en/dashboard/users/allCustomer accounts, and the removed ones.
Homepage/en/dashboard/homepageThe website's nine home page sections.
AI studio/en/dashboard/studioRestyle a dish photo and compare it with the original.
AI assistant/en/dashboard/ai-assistantA chat about orders, sales and the menu.
Team/en/dashboard/admins-managementStaff accounts, their roles and their kitchen, and the roles themselves.
Settings/en/dashboard/settingsThe signed-in account's profile and password, and the restaurant's settings.

The bell in the top bar holds the notifications, a search palette finds dishes, orders and customers, and the "View storefront" link opens NEXT_PUBLIC_STOREFRONT_URL. The dashboard is never indexed by search engines.

On the demo data, the overview's figures for today start from a stored sample day, with the paid orders placed since the seed added to it, and yesterday is the stored day before. A kitchen account never sees the overview, because it reports money.

Owner, manager and kitchen

RoleWhat it can doDemo account
OwnerEverything, including the team and the rolesowner@foodstudio.example
ManagerEverything except the team and the roles: orders, menu, categories, customers, homepage, the AI studio and assistant, settingsmanager@foodstudio.example
KitchenThe orders of one kitchen, with no prices and no customer email, moved from confirmed to preparing to ready; and their own profile and passwordkitchen@foodstudio.example
  • Every demo account uses the password FoodDemo2026!. The sign-in form starts empty: type the email and the password of the account you want. Only a public demo, with demo mode on, fills the form in and shows a button for each account. Change these passwords, or delete the accounts, before going live.
  • Permissions are named like orders.view or products.edit, and the API checks one on every staff route, whatever the screen shows.
  • The sidebar and the search palette leave out what an account cannot open, and a page opened by its address shows an access notice instead.
  • A kitchen account is tied to one kitchen in Team. It sees that kitchen's confirmed, preparing, ready, out for delivery and delivered orders only, and never the overview, because the overview reports money.

Orders and the kitchen's queue

The list searches by order number and customer, and filters by status, delivery or pickup, and date, the day being counted in each kitchen's own timezone. The selected order shows its customer, delivery address, items with their options and notes, totals and timeline.

StatusMeaning
PendingPlaced and waiting for its payment.
ConfirmedPaid. It is in the kitchen's queue.
PreparingBeing cooked.
ReadyReady to go out, or to be collected.
Out for deliveryOn its way. Delivery orders only.
DeliveredReceived or collected. Reward points are earned now.
CancelledStopped, with a reason, before it left the kitchen.
RefundedSet by the payment provider's refund, never by hand.
  • The order page moves an order one step forward at a time, with buttons such as Mark ready, Send out for delivery and Mark delivered, or cancels it with a reason. The API enforces the order of the steps, and a pending order cannot be confirmed until it is paid.
  • Each order prints as a kitchen ticket and downloads as a CSV file.
  • New orders and status changes arrive live, in the list and in the bell, without a reload.
Part of the dish formFields
DetailsName and description in English and Arabic, category, price, preparation time
OptionsUp to 10 option groups, such as a size or extras, each with up to 40 choices and a price change per choice, and the fewest and most a customer may pick
Food detailsAllergens, dietary tags, and stock when you track it
MediaPhotos and clips, one of them the main one, with the AI studio beside them
SwitchesPublished, available now, featured and best seller
  • Available now is the switch a kitchen flips during service: the dish stays on the menu and cannot be ordered.
  • Archiving moves a dish to Archived dishes, where it can be restored. Categories archive and restore the same way.
  • The combo, its choices and their surcharges are an offer the API stores; the assistant can switch it on and off.

Customers

The customer list searches and filters customers, with the counts above it. Staff can add a customer, open their details, change their password, mark their email verified, remove them and restore them. Customers edit their own details from their account on the website.

The website's home page

Homepage lists the nine sections in page order. Drag them, or use the arrows, to reorder; switch each one on or off; and open one to edit its text in both languages. Changes save as you type.

Section in the sidebarOn the website
HeroThe opening banner
CategoriesThe category row
Popular dishesUp to eight popular dishes
Combo offerThe featured combo
Meal builderThe build-your-meal band
IngredientsThe three ingredient cards
DeliveryThe delivery band
RewardsThe rewards band
FAQThe questions and answers

Editing a section needs the products.edit permission.

The AI studio and the AI assistant

  • AI studio picks a dish, restyles its photo with a background, a lighting and a prompt saying what to keep, and compares the original with the result. Save as draft keeps the result on the dish's draft until you save the dish. A "Remove background" button cuts the dish out when the model file is installed.
  • The studio in the dish form has an Assistant mode, which writes the dish's details from its photos and edits photos on request, and an Animate mode, which turns a photo into a short clip. Results land in a Generations list; add the ones you like to the dish.
  • AI assistant looks up orders, dishes and sales and draws charts. Anything that would change data is shown as a difference first and runs only when you confirm it.
  • Without a Google AI key on the API, the studio says "Image generation is not connected" and the assistant says "No AI model is connected". Everything else in the dashboard works.

Team and roles

  • Members lists the staff and adds, edits and removes them. Each member holds one or more roles, and a kitchen member is tied to one kitchen.
  • Roles creates, renames and deletes roles, and grants their permissions from a grid grouped by area. A member holds every permission of every role they have, and a change reaches a signed-in member straight away.
  • Only the owner sees Team: the manager and the kitchen roles hold no team or role permission.

The seed creates eight staff accounts: the owner, three managers and one kitchen account for each of the four kitchens.

Settings

Settings has three tabs. Profile and Security belong to the signed-in account and are open to every member. Restaurant needs the settings.view permission to read and settings.edit to change.

Restaurant panelWhat it sets
KitchensEach kitchen's name, address, postcode, contact, hours, timezone, preparation time, delivery postcodes (up to 50), featured dish, place on the map, and whether it takes orders
Fulfilment feesThe delivery fee, the pickup fee and the delivery minimum, in dollars
Service clockReal, which reads each kitchen's own time, or Demo clock, which holds every kitchen at 20:55 so orders can be placed at any hour. The seed starts on the demo clock.
RewardsPoints per dollar, points per redemption and what a redemption is worth
Promo codesEach code's percentage, whether it covers the menu only or the whole order, whether it combines with rewards, and whether it is active
PaymentsThe payment methods this build offers and whether each is in test or live mode. Read only: the keys are set on the server.
Language and themeHow the dashboard looks for you, kept in this browser
All settings by keyEvery stored setting, including the restaurant's name, tagline, support email and phone

Notifications

  • A new order notifies the staff who can see it, and a finished or failed AI studio generation notifies the member who started it. A kitchen account hears only about its own kitchen's orders once they reach its queue.
  • They arrive live, with a short message on screen, and stay in the bell's list until read or removed, for 30 days.
  • The live connection uses NEXT_PUBLIC_WEBSOCKET_BASE_URL, the API's address without /api, and the API accepts it only from FRONTEND_URL. On your own domains, set both.

Demo mode

Included with your purchase. Sign in to read, or open it in your download.

Running a public demo: per-visitor accounts, what visitors can change, and bring-your-own-key.

How the dashboard's code fits together

Included with your purchase. Sign in to read, or open it in your download.

The code's structure, and the recipes for adding a page, a translation and an API service.

Stuck on a step?

Find a fix before you start over.

Troubleshooting

Cookie Preferences

We use cookies to enhance your browsing experience, analyze site traffic, and personalize content. By clicking "Accept All", you consent to our use of cookies for analytics and personalized advertising.