Senior Project · University of Bahrain

SooQna

سوقنا — Our Market

AI-Assisted Electronics Marketplace

A Flutter marketplace restricted to smart electronic devices, targeted at Bahrain — with real-time auctions, an internal escrow wallet, AI image moderation, and a bilingual AI shopping assistant.

Escrow Wallet Live Auctions AI Powered Bilingual EN/AR
~20
DB Tables
3
User Roles
2
AI Integrations
11
Categories

SooQna ("سوقنا" — our market) is a Flutter marketplace restricted to smart electronic devices, targeted at Bahrain (prices in BHD) and fully bilingual (English/Arabic with RTL). It's built serverless on Supabase, with two Deno Edge Functions that proxy Google Gemini so the AI key never reaches the client. Developed as a Senior Project (ITCS498) at the University of Bahrain, academic year 2025–2026.

Flutter + Supabase Serverless architecture EN/AR bilingual + RTL ~20 PostgreSQL tables 14 migrations GitHub Actions CI

AI Image Moderation

Every uploaded photo is checked by Gemini Vision — non-device or unsafe images are rejected. Includes magic-byte MIME validation, retries, and graceful fail-open on quota errors.

AI Shopping Assistant

An in-app chat (Gemini) that injects live product data from the database into the prompt to answer real buyer questions. Text moderation scans listings for scams, spam, and prohibited content.

Internal Escrow Wallet

Balances, holds, and a transaction ledger via atomic Postgres RPCs (deposit/withdraw/spend). A real-time wallet stream across three channels computes available vs. held balance.

Real-Time Auctions

Proxy/auto-bidding with funds held on bid and auto-released when outbid. Server-side winner finalization transfers funds atomically and marks the item sold.

Marketplace Core

Offers/negotiation, in-app chat (images, replies, read receipts), saved items, ratings & reviews, follows, and real-time notifications across all user interactions.

Three Roles & Admin

Separate user, company, and admin experiences. The admin dashboard handles reports, payment disputes, sponsorships, user management, analytics, and sponsored home-page banners.

Flutter Dart Provider Supabase PostgreSQL Supabase Auth Supabase Realtime Supabase Storage Edge Functions (Deno) Google Gemini Vision + Chat PostgREST RPC / stored procedures GitHub Actions (CI) EN/AR + RTL

Project Supervisor

Dr. AbdulFattah Mahmood Abdulrazzaq Salman

Faculty member at the Department of Computer Science, University of Bahrain. Guided the team through the entire project lifecycle — from requirement collection through implementation and testing.

Mahdi Mohammed Ghuloom Haji

ID: 202104612

Full-Stack Developer

Hussain Ali Abdulhussain Shughul

ID: 202202587

Full-Stack Developer

Abdulaziz Abdulhadi Mohamed Alsakran

ID: 202105928

Full-Stack Developer
University of Bahrain  ·  College of Information Technology  ·  Department of Computer Science  ·  ITCS498 Senior Project  ·  2025–2026