I have built this service, it's a web app written in Rust.
The app is connected to a Lightning node. Here is how it works:
Alice and Bob login using their Lightning wallet.
Alice is looking for a freelancer. She creates a new task visible to everyone. She puts a budget of 100,000 sats for it.
Bob is looking for a task related to his skills. He is interested by Alice's task. He submits an offer of 150,000 sats.
Alice receives a notification about Bob's offer. She finds the profile of Bob interesting. She accepts his offer.
An Lightning invoice of 150,000 sats is provided to Alice (generated by the app).
Alice pays the invoice using her Lightning wallet, and the amount is kept in the Gigsats escrow.
Bob starts to work and delivers quickly the work for the task.
Alice reviews the work of Bob. She marks the task as completed.
150,000 sats are transfered from the Gigsats escrow to the balance of Bob's account.
Bob withdraws 150,000 sats instantly to his Lightning wallet.