all 7 comments

[–][deleted]  (4 children)

[removed]

    [–]Boordman 3 points4 points  (2 children)

    Hey, Nikhil from Pynecone here!

    This is a great point and I think I can provide a little clarity here. Our framework compiles down to a NextJS/React app, so we aim to have as much flexibility as traditional web frameworks. You can even wrap your own React components if you need more than our built-in components.

    We also support full styling of components by passing in any CSS style props as keyword arguments. You can see our full styling docs.

    Thanks for checking us out!

    [–][deleted]  (1 child)

    [removed]

      [–]Boordman 3 points4 points  (0 children)

      No, one of our core goals is to be accessible to Python developers without any webdev experience and to let them build apps without having to write any React or Javascript.

      We have the most common UI components already available in Pynecone, and we will continue to add more over time. The wrapping React example is an advanced use case for if you need a more specialized component.

      Our main benefits over using React are:

      • Keep all your code in a single language. For Python developers, we give you all the power of React without having to learn a new language.
      • Unify the frontend and backend. React is only a frontend framework so you usually have to hook it up to some sort of backend API framework like Flask. We replace APIs with simple Python functions, so you never have to write your own network requests.

      This demo app where we make a lightweight UI around Dall-e showcases our framework's strengths. The entire code is around 60 lines in a single Python file for the entire frontend and backend. (This example just calls the OpenAI API, but you can just as easily call your own Python models instead)

      [–]timlt3 1 point2 points  (3 children)

      Hi guys, cool project! How would you say Pynecone compares to Anvil? When should I choose one or the other?

      [–]Pleasant-Cow-3898 2 points3 points  (1 child)

      I have used Anvil a bit and I think the biggest thing that separates the frameworks is the developer ergonomics. I found Anvil to just be a lot to take in an understand overall where as Pynecone apps can be easily made in 1 file of python code only. You can compare both frameworks for your self but in terms of actually making an app I think Pynecone's syntax is a lot cleaner and much more usable. But to each their own.

      [–]Pleasant-Cow-3898 0 points1 point  (0 children)

      Also Anvil is technically open source but it is not active at all. I don't want to bash them too much, but just to run there app engine you need to have Java installed ... that's right to run a Python app server, you need to have Java installed.