dot-agent / nextpy

🤖Self-Modifying Framework from the Future 🔮 World's First AMS
https://dotagent.ai
Apache License 2.0
2.2k stars 155 forks source link

Nextpy vs Reflex #149

Closed ibehnam closed 7 months ago

ibehnam commented 7 months ago

I'm shocked to see the amount of similarity between the two frameworks:

Reflex chat UI example:

https://github.com/reflex-dev/reflex-chat/blob/main/webui/webui/webui.py

image

NextPy chat UI example:

https://github.com/dot-agent/nextpy/blob/main/app-examples/simple_chat/simple_chat/simple_chat.py

image
Raj4646 commented 7 months ago

The goals of Reflex and NextPy are very different. NextPy is a framework for self-editing apps powered by AI, and it's multiplatform by default. For web apps, the underlying frontend is powered by a variant based on Reflex code, but NextPy is not limited to web apps like Reflex is. If you export a Nextpy app for Jupyter, the underlying frontend is powered by Solara. Our aim is to develop a unified framework for self-modifying applications that extends beyond web apps. While Reflex focuses on web apps like Streamlit, our framework extends similar abstractions to facilitate GUI development in Jupyter powered by Solara and Reacton. Additionally, NextPy enables deployment of core functionalities as bots for platforms like Discord, Slack, and Telegram. The key differences between NextPy and Reflex are NextPy's AI-powered self-editing capabilities and its multiplatform support, which allows developers to create applications that can be deployed across various environments and platforms.

anubrag commented 7 months ago

@ibehnam, thank you for reaching out. As @Raj4646 has thoughtfully explained, the intended use cases for Reflex and NextPy are quite different. Since the NextPy framework is still evolving, it may not be worthwhile to spend time detailing all the differences at this stage.

You make a valid point that when generating code for a web app using NextPy, the resulting code may bear similarities to that of Reflex, Streamlit, or Solara. This is because we have judiciously incorporated significant portions of Reflex's and Solara's codebase to avoid reinventing the wheel, which aligns with the spirit of open source collaboration. However, we couldn't directly include Reflex or Solara as dependencies due to the need to adapt their abstractions to our specific requirements. Our core emphasis lies in developing the self-editing capabilities of NextPy.

Currently, we are in a limited beta testing phase with a small group of developers, and we haven't even fully documented all of our features yet. Once we release version 1.0, we intend to provide a thorough comparison of NextPy with other prominent frameworks such as Reflex, Streamlit, Solara, FastAPI, and more. This will offer a clearer understanding of how NextPy stands out from and builds upon these existing tools. We appreciate your interest and look forward to sharing more insights as our project reaches this significant milestone.