Your starting point
Use Gammal Tech AI to move from a focused idea to a first working version in minutes when the brief is approved and the required setup is ready. Refine it with [mode: idea], then use [mode: build] for the frontend, backend, database, authentication and payments. Actual build time depends on scope, account readiness and integrations.
The app and the problem it solves
When a journey is disrupted, the cheapest listed ticket may not connect with the next leg or may leave from a different airport. RouteAgain organises candidate alternatives into complete, time-aware journeys. It helps an Egyptian traveller compare arrival time, transfers and additional cost without hiding missing checks.
For a graduation project, begin with a small dataset of rail, coach or flight legs supplied by the user or labelled as fictional. The central challenge is routing with time constraints. You can demonstrate it fully without claiming access to live seat inventory or automatically booking a replacement.
The first user journey
- The traveller enters the current location and time, intended destination and latest useful arrival time.
- They add candidate transport legs with departure and arrival timestamps, locations, costs and information about baggage or transfer requirements.
- The app builds feasible routes, allowing enough user-defined connection time and rejecting legs that have already departed.
- The traveller compares alternatives and sees the checks still needed with operators and official sources before making a booking.
The logic that makes the project distinct
Represent each leg as a directed connection with departure and arrival instants. A second leg is feasible only if its departure follows arrival plus the required transfer time. Different airports in the same city must be separate locations linked by an explicit transfer leg; matching city names is not enough.
Compare multiple objectives instead of hiding them in one unexplained score: earliest arrival, lowest extra cost and fewest changes. Transit permission, operator acceptance and ticket protection must remain explicit unresolved checks unless independently confirmed. A mathematically connected route is not necessarily a journey the traveller is allowed or able to take.
next departure ≥ previous arrival + transfer time route cost = sum(added transport costs + supplied transfer costs)
A classroom demonstration
In a synthetic dataset, a first leg arrives at 14:10. A candidate connection leaves at 14:40, while the user’s required transfer time is 45 minutes, so that connection is rejected. A 15:20 departure passes the timing check. If it leaves from another terminal or airport, the route needs the relevant transfer information before being treated as complete.
Data, interface and backend
Ask for a full-stack application: a phone-friendly frontend, backend logic, a database for persistent work, authentication for the personal workspace and payments for the defined offer. Start with private user workspaces and a small, inspectable dataset. These records give the model a concrete starting point:
| Record | What it stores |
|---|---|
| Situation | Current location, timestamp, destination and arrival preference. |
| Candidate legs | Locations, dated times, cost, source and availability status. |
| Route checks | Transfer assumptions, unresolved permissions and comparison results. |
With Gammal Tech services, personal app data belongs to the user’s workspace. Signing in does not disclose their Gammal Tech account email, phone number or identity to your app. If a later version shares records between people, specify the sharing model and permissions explicitly in the build brief.
A specific paid offer
A paid product might preserve alternative scenarios and generate a concise decision report that the traveller can discuss with the carrier. It should not sell a guarantee of rebooking or reimbursement. Keep checkout for the planning service separate from transport purchases made with actual operators.
Define the deliverable, price and currency before checkout. Confirm payment with the provider and associate the entitlement with the correct order; a success screen alone is insufficient. Complete the required account and payment setup before real use, and review the applicable operating costs and payment terms.
Refine the idea with [mode: idea]
1. Open the conversation. Open the Gammal Tech WhatsApp conversation with +201033998844. Open the link first, then continue inside WhatsApp.
2. Start Idea mode. Copy the following command into a message by itself and press Send. The square brackets [ ] are required; keep the colon and space too.
[mode: idea]3. Wait for the mode-change confirmation, then send the brief. Send the following text as a new message, adapting it to your team. Answer the assistant’s questions about the audience, first version and paid value until the idea is approved.
Refine RouteAgain as a travel graduation project in Egypt. Define a small time-aware routing problem after a disruption, with explicit transfer legs and missing-information states. Suggest a useful paid report and a demonstration where the cheapest individual legs fail to form a feasible route. Keep live inventory and booking outside the initial scope.
Build the project with [mode: build]
4. Move to Build after the idea is approved. In the same WhatsApp conversation, send the following command by itself, including the square brackets, then press Send.
[mode: build]5. Wait for the mode-change confirmation, then send the requirements. Use the following message as a starting brief. Agree the scope of the frontend, backend, persistent data, login and payments. Ask about access, setup and fees, and approve the scope and cost before work begins. Simple versions can be prepared in minutes once prerequisites are ready; timing depends on the project scope.
Build RouteAgain with an English frontend, backend, database, authentication and payments. Add a current travel situation and manually supplied transport legs, then calculate feasible alternative routes using timestamp and transfer constraints. Show cost, arrival time and changes separately. Save private scenarios and add a paid report with verified access. Mark operator availability and travel permissions as unresolved when not confirmed.
The buttons prepare the command in WhatsApp. Press Send to start the conversation.
6. Review the result and leave the mode when you finish. Open the project link and try the user journey and test cases described in this article. For a correction, name the page and the result you expect. To return to the normal assistant, send the following command by itself, including both square brackets:
[exit]What to demonstrate at graduation
- Reject the 14:40 connection after a 14:10 arrival when the transfer requirement is 45 minutes.
- Prevent two different airports from connecting merely because their city labels match.
- Test an overnight leg and confirm that the arrival is on the correct date after conversion to a common timeline.
Compare a basic shortest-cost algorithm with the time-feasible version on the same dataset. The difference gives the graduation report a clear experiment. Add live sources later only if their terms, timestamps and availability semantics can be represented honestly in the interface.
Demonstrate the interface, the decision logic and saved work after login. Explain your own understanding, assumptions and evaluation, following your university’s rules on AI assistance. A classroom demonstration can use clearly labelled sample payment states without making a charge. Those samples are not a Gammal Tech gateway test mode; gateway transactions involve real money.
Does finding a route mean tickets are available?
No. The initial version compares supplied options. The traveller must confirm current availability and all relevant conditions with the operator before booking.
Sources and next steps
Recheck sources and service terms when implementing. Fictional data and prices in this article illustrate the project, rather than current offers.