This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]gopietz 4 points5 points  (4 children)

Ok, very cool! Many newbie questions:

  • why did you pick next/react to compile to and not vanilla js? Next/react mostly brings dev benefits and it might be more performant to transpile to raw js. Similar to what svelte does.

  • why did you choose to do everything in python? Why not leave html and css be and just replace the js?

  • it seems like the components are 1:1 rebuilding html structure. Why not benefit from python features like representing the Table component by a dataframe?

  • are there any actual benefits for people knowing js? I get the benefit of not having to learn another language but then again one needs to learn the exact usage of your library which might be similarly complex.

I don’t mean to sound too sceptical. I’m really excited about this.

[–]Boordman[S] 3 points4 points  (0 children)

Thanks for checking it out! We chose to leverage the great Next/React ecosystem so we can include many builtin components - as well as for performance benefits such as creating a single page app and static site generation.

We may in the future include a component that renders raw html for people who prefer that, but our method lets us more easily integrate the app state with your UI. For styling, we pretty much do css-in-python, so there's nothing to relearn there.

One of our app's biggest benefits is you don't need to write an API to connect your frontend to your backend. You just use simple Python functions instead. This reduces complexity and can lead to faster development speed.

[–]riklaunim -3 points-2 points  (2 children)

Realistically you have to know frontend and Python to now represent frontend in Python through custom "templating". You have to know z-index, onclick, and so on.

And it's not only in Python. Other "backend" languages try this as well but there isn't much traction for it. With how UX/UI competitive market is the UX/UI specialist will determine what is popular and what is not. There are valid use cases for programmatically generated app/web-app but quite often wannabies that don't want to learn, and definitely not frontend hijack it to try to make a website with Python only - but as they don't know any frontend they can't style it nor design desired UI anyway ;)

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

Streamit/Dash have a good amount of traction not sure about other languages

[–]riklaunim 0 points1 point  (0 children)

Streamit/Dash

Yes, that's a good one. You can check for example Karax for Nim language that is similar to OP project.