تفاصيل العمل

The current system is built with:

Backend: Python / FastAPI

Frontend: HTML / CSS / JavaScript

Database: Supabase / PostgreSQL

Desktop: Windows application packaged with PyInstaller

I need an experienced developer to improve the system's performance and add reliable offline functionality while keeping Supabase as the only database.

Requirements

1. Offline Support

The application should continue working when the internet connection is temporarily unavailable.

The system should be able to handle:

Creating bookings

Editing bookings

Check-in

Finish

Cancel booking

Delete booking

Queue number management

Searching and viewing existing data

When there is no internet connection, operations should be stored safely and synchronized with Supabase automatically when the connection is restored.

Important: I do NOT want SQLite or another local database as the main database. Supabase must remain the only database/source of truth.

A suitable local temporary/pending-data mechanism can be used only for handling offline operations.

2. Automatic Synchronization

When the internet returns:

Automatically detect the connection.

Synchronize pending operations with Supabase.

Prevent duplicate records.

Retry failed synchronization safely.

Do not lose data if the application is closed or Windows restarts during synchronization.

Handle conflicts safely.

3. Performance Optimization

The application currently takes too long to start and load data.

I need:

Faster application startup.

The application should not wait for Supabase before opening.

Optimize Supabase queries.

Avoid loading the entire bookings table unnecessarily.

Load only the required/current data.

Run synchronization in the background.

Reduce unnecessary API/database requests.

4. Existing JSON Backup

The current application has:

backups/latest_backup.json

Keep it as an additional backup mechanism.

Improve it so that:

Existing data is preserved.

It does not recreate the entire file unnecessarily after every operation.

Changed/new records are updated efficiently.

The file remains valid and UTF-8.

Use safe/atomic file writing to prevent corruption.

Existing monthly archive functionality must remain working.

5. UI

Change the current purple theme/accent color to blue while keeping the existing design and functionality.

Important

Do not rebuild the application from scratch.

Work on the existing codebase.

Do not delete existing Supabase data.

Do not change the existing database unnecessarily.

Preserve the current booking, grouping, queue, check-in, finish, cancellation, reporting, and backup functionality.

Keep compatibility with the current Windows .exe deployment.

No Arabic/emoji console output that could cause Windows charmap encoding errors.

ملفات مرفقة

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
تاريخ الإضافة
تاريخ الإنجاز
المهارات