A web and mobile platform that manages mentors' calendars, bookings and institutional website integration for İTÜ Ginova, Istanbul Technical University's entrepreneurship centre, and similar institutions.
Two Bookings for the Same Slot — Impossible at the Database Level
In mentoring programmes, institutions often approve booking traffic by hand: the mentor's availability, the founder's request, the institution's approval chain. Mentorual takes the institution out of that daily chain — mentors manage their own calendars, and founders reach the same booking engine from the institution's website, a subdomain or the mobile app.
We are building the platform as a multi-tenant structure offered to institutions: each institution's data is separate, and institutional websites such as Ginova's connect to availability and bookings through an API. Sign-in is through LinkedIn and Google.
The Hard Part
Booking conflicts are prevented in the database, not in code: a second booking for the same time range is impossible because of a constraint. Concurrent updates are protected by version checks and repeated requests by idempotency keys. Institution isolation is applied in two independent layers — a fail-closed permission chain and database row-level security.
How We Built It
- Double-booking protection by database constraint, with idempotency and version checks
- Two-layer institution isolation and leakage tests on a real database
- Transactional outbox and a sealed audit chain
- A contract gate that catches backward-incompatible API changes
- An availability and booking API for the institution's website; web and mobile
The Result
A platform where institutions leave the booking approval chain and double bookings are architecturally impossible. The next version plans mentor recommendations with a language model hosted in Turkey, for data residency under data-protection law.
Let's produce a similar outcome together
If you have a need like this reference project, let's talk.
Get in Touch