How are you generating the apps? Do you use an agent SDK or is it home grown?
The everything in one EAV table concept sounds very interesting as well. Can you say more about that? What kind of queries does it support? Sounds a bit like datomic or datascript. How do you tell the agent to use it?
1. Since Instant is reactive, we use it to convey the stream to the client. This way all chats are "resumable" by default, even if the user refreshes the page.
2. To make sure Instant writes don't block the stream, we use a "natural" buffer approach. Basically tokens from the LLM buffer up during every save.
Application error: a client-side exception has occurred while loading pure-palm-djnlwn.manyminiapps.com (see the browser console for more information).
Uncaught QueryValidationError: At path 'worlds.snapshots.$': 'limit' can only be used on top-level namespaces. It cannot be used in nested queries.
NextJS 7
tP
tL
tq
tq
tV
subscribeQuery
subscribeQuery
122-677938205b479825.js:1:45042
NextJS 128
tP
tL
tq
tq
tV
subscribeQuery
subscribeQuery
a
av
o0
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
ux
uS
We had a specific note in the system prompt warning the LLM to avoid this. Interestingly, _removing_ the warning fixed the issue. I guess it's kind of like telling someone to not think of a red elephant.
Each mini app runs on a subdomain, and the code is evaluated on the local machine. Since a few hackers are interested in the LLM details: Right now we are running Opus 4.1, but we might switch it.
> build a bingo board app for a group of friends. the owner enters texts (options) in a textbox.
> A link is generated that can be sent to participants.
> They enter their name and can can mark bingo options (5x5 with joker at center) and see a scoreboard.
Oo cool idea! We don't limit the input size, so you could add more context. I wonder if giving it some docs on Instant's presence [1] could help it do the right thing with Doom. Ideally movements should be ephemeral rather than stored in the DB, and the system prompt we have doesn't say too much about that.
>Build a simple lofi black and white multiplayer doom clone where players drop in near each other in a procedural generated forest world. The graphics should be 2d in a 3d world. Players enter their name before joining. The DB tracks players names, scores, deaths, total play time. When a players is shot too many times and dies they randomly respawn. Players should spawn within visual range of each other. add some harmless non-players animals that roam around. generate some forest background noise to play. players should make a little sound when they walk that other players can hear. players should be able to hide behind trees. Try to make it fun.
How are you generating the apps? Do you use an agent SDK or is it home grown?
The everything in one EAV table concept sounds very interesting as well. Can you say more about that? What kind of queries does it support? Sounds a bit like datomic or datascript. How do you tell the agent to use it?
> Do you use an agent SDK or is it home grown?
It's about 260 lines of home-grown code. Here's a snippet of how it looks:
https://gist.github.com/stopachka/a38f00545d048661cf15a3cf4d...
Two interesting things there:
1. Since Instant is reactive, we use it to convey the stream to the client. This way all chats are "resumable" by default, even if the user refreshes the page.
2. To make sure Instant writes don't block the stream, we use a "natural" buffer approach. Basically tokens from the LLM buffer up during every save.
Update: Claude just went down. We are switching to GPT 5 right now. Will update as soon as we're deployed.
Update 2: Claude seems to be back. We have the GPT 5 version ready, just in case now : )
Application error: a client-side exception has occurred while loading pure-palm-djnlwn.manyminiapps.com (see the browser console for more information).
Uncaught QueryValidationError: At path 'worlds.snapshots.$': 'limit' can only be used on top-level namespaces. It cannot be used in nested queries. NextJS 7 tP tL tq tq tV subscribeQuery subscribeQuery 122-677938205b479825.js:1:45042 NextJS 128 tP tL tq tq tV subscribeQuery subscribeQuery a av o0 ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS ux uS
Oh, interesting! I just took a look.
I updated the system prompt a bit, here's a version of your app that's working with it:
https://brave-elm-7m6ar8.manyminiapps.com/
(The chat: https://www.manyminiapps.com/?c=1a5d3481-d2e2-414c-a7c3-4d0c...)
---
For the curious, the issue was that the LLM originally decided to write the query:
```
```But we don't support limits on subqueries yet.
We had a specific note in the system prompt warning the LLM to avoid this. Interestingly, _removing_ the warning fixed the issue. I guess it's kind of like telling someone to not think of a red elephant.
Note for folks trying to hack this :) ->
Each mini app runs on a subdomain, and the code is evaluated on the local machine. Since a few hackers are interested in the LLM details: Right now we are running Opus 4.1, but we might switch it.
wow it works https://joyful-star-ow6vuo.manyminiapps.com/
I got this with a very short and basic prompt, it lets the user track blood sugar and ketone levels.
It worked really well, and it was very fast, especially considering that it is on the front page of HN. Congrats, very cool project
Link to the app https://vital-crow-mmrs4s.manyminiapps.com/
Some of there are pretty cools, trying to see if it can run a multiplayer doom.
And it works! https://www.manyminiapps.com/?c=da20213e-6832-4cd8-ac73-7669...
Albeit slowly.
Great work!
oh no, great work to you getting this strung together as a system.
Oo cool idea! We don't limit the input size, so you could add more context. I wonder if giving it some docs on Instant's presence [1] could help it do the right thing with Doom. Ideally movements should be ephemeral rather than stored in the DB, and the system prompt we have doesn't say too much about that.
[1] https://www.instantdb.com/docs/presence-and-topics.md
Here's my prompt
>Build a simple lofi black and white multiplayer doom clone where players drop in near each other in a procedural generated forest world. The graphics should be 2d in a 3d world. Players enter their name before joining. The DB tracks players names, scores, deaths, total play time. When a players is shot too many times and dies they randomly respawn. Players should spawn within visual range of each other. add some harmless non-players animals that roam around. generate some forest background noise to play. players should make a little sound when they walk that other players can hear. players should be able to hide behind trees. Try to make it fun.
It basically worked. https://www.manyminiapps.com/?c=da20213e-6832-4cd8-ac73-7669...
I tried a few random apps but the UI section was blank white...
Oh that's weird. Would you mind sending over a few links of the apps you made?
I made one, and it didn't work at all. Clicking the button in its UI did nothing.
Oof, sorry about that. Do you have a link? Curious to dive deeper
https://www.manyminiapps.com/?c=2d9f40fc-515e-4686-8604-5868...
>You load the page. You write 1 prompt and you get a mini app back in under 2 minutes.
Then what?
I would suggest sharing the app you built, and seeing what others come up with.
Technically you could use the apps for yourself too, though everything is public so be wary.
Clicking "make" takes me straight back to the first page.
Easy.
Step 2. Scale unicorn SaaS to $1B valuation
Step 3. Sell it, become rich, buy superyacht