Git paid app - #146
Git paid app#146tanmaysainighy wants to merge 9 commits into
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
simantak-dabhade
left a comment
There was a problem hiding this comment.
Hey @tanmaysainighy — nice work on the architecture here, the 3-tier agent system is a solid design and the SDK usage is correct. A couple of things to address before we can merge:
1. Split up index.html (1,057 lines)
The single-file frontend is too large for a cookbook example — people will reference this to understand how things work, and a 1,000+ line file is hard to navigate. You don't need to add React or any framework, but please split it into separate files:
static/
├── index.html ← markup only
├── styles.css ← all the CSS
└── app.js ← all the JavaScript
This makes the code scannable and easier to learn from.
2. Show live agent preview with streaming_url
Right now you only listen for CompleteEvent in agents.py and ignore the StreamingUrlEvent that the SDK sends back. This is a missed opportunity — the streaming_url gives you a live browser session URL that you can render as an iframe in the UI.
Imagine: user hits search, and as each agent starts working, they see a live preview of the browser navigating the site in real time. This would massively improve the UX and make the app way more impressive as a showcase.
Here's roughly what to do:
In agents.py — capture the streaming URL event and send it through the queue:
from tinyfish import StreamingUrlEvent
async for event in stream:
if isinstance(event, StreamingUrlEvent):
# Send the live URL to the frontend
await queue.put({"type": "streaming_url", "source_id": source_id, "url": event.streaming_url})
elif isinstance(event, CompleteEvent):
...In the frontend — when you receive a streaming_url event, render an iframe:
<iframe src="${event.url}" style="width:100%;height:400px;border-radius:8px;border:1px solid var(--border)"></iframe>This is one of TinyFish's best features — showing the agent at work live. Would love to see it in this app.
Let me know if you have questions on either of these!
No description provided.