I have used this to build an internal tool, and that was quite a nice experience.
My main complaint right now is that it's quite a bit of work to build authentication. I think there are some examples somewhere that show you how to do it. But given, how common it would be for people to use authentication, it should be built in as a first-class object.
For those who were familiar with pynecone, this is actually the same framework, just rebranded.
Anvil [1] is another "pure Python web framework", where you write both the client and the server code using Python. (The client code gets converted to JavaScript so that it can run in the browser.) Anvil has been around since 2016 [2].
I gave this a go recently, nice work! In a few hours I was able to get a really nice looking UI starting from an example.
I got a bit frustrated when it came to managing state though. I struggled to mutate and view the same state across all web users, instead of creating state per user that connects. However this is still a great framework I’ll definitely revisit in the future!
Can you call it pure python if it compiles to React? Seems like the abstraction just makes it harder to debug
What would make it easier for me to bet on this is if a few pages made with this could be embedded in an existing Django app, in particular using Django auth. I assume many other people are in that position, with existing Django assets.
I get that it's not straightforward because it's based on FastAPI and has its own ORM based on SqlAlchemy, both of which have different async behavior than Django, but is it possible to maybe host a Django app and Reflex app in the same process, routing between the two at the WSGI/ASGI etc. level, and only interact with the Django auth middleware?
I was wondering if WebAssembly has been considered as a compilation target instead of React? Are there major down sides to WebAssembly?
> writing a lot of boilerplate code to connect the frontend and backend.
OpenAPI. django-ninja supports it out of the box.
i love dash, but multipage and auth start to feel like a stretch. keeping an eye on reflex
I've tried it in my company. It's great, but the builds were annoying because of pip failing to solve the dependencies when using Reflex together with other big libraries.
I'll give it another try in the future.
Having no logic in the front-end sounds nice, but how well does it deal with an imperfect network connection? If I have 500ms ping, does that mean I have to wait 500ms for each UI interaction?
This looks like a really neat project! The examples certainly feel less “script-like” than streamlit.
One thing I find disappointing though, is that this framework is built on top of FastAPI. I feel it’s a bad idea to build on top of what’s basically a one-man project. No matter how popular that project is.
im super excited to use this
it has a lot potential
just needs more tutorials and github projects using it
i feel like this scratches a lot of itch and the HN comments here aren't doing it justice.
I am not even an investor in reflex and im using it and i love it
frontend for backend (python)
Another one? How many web frameworks does Python need?
Fuck it. Let's code the web in binary.
I really like this idea of using Python to create both the frontend and backend. Another lib doing this is https://solara.dev/ . Something I particularly like about Solara is that you can interactively build your app in a Jupyter Notebook, since behind the scenes it's using ipywidgets.
Has anyone compared Solara and Reflex and can comment on pros/cons? Are there other options in this space? Maybe https://shiny.posit.co/py/ ?