*Say "Hi" on the live demo app:* guestbook.pythonandvba.com/ What types of web apps do you want to build with fastHTML? Let me know in the comments! ⤵ Cheers, Sven ✌
👏🏽👏🏽 awesome demo! Wait...I thought you were testing out Reflex ahah :D how's the FastHTML experience compared to vanilla FastAPI/HTMX/PicoCSS? and Reflex?
Thanks, Fanilo! I guess I have a case of shiny object syndrome 😅 Reflex was working great, but I felt a bit more "locked in" to its environment and syntax. That said, it does have some really cool "recipes," like login/signup forms, pricing cards, etc. FastHTML, on the other hand, feels more intuitive for me. I also think that, over time, there will be more (community) components, similar to Reflex’s recipes. What are your thoughts on this?
@@CodingIsFun i totally got the « reflex syntax lock-in ». The Frontend/Backend split is a nice construct, similar to how other JS frameworks do it, but when I get errors trying to show something Frontend that should be backend state or vice versa, it gets hard to debug. I think it just feels way more « framework for web devs used to full stack SPA frameworks » I’m not yet used to FastHTML’s HTML Caps syntax 😅, but it feels so much closer to vanilla html/css/js I think it’s easier to reason around and flexible enough for pythonistas. Looking forward to the community components growing!
My first goal is customer data entry forms. My ultimate goal is a full app with all the things: database, API, local- / offline-first, microservices, event-driven design, document management system, CI/CD... Oh, and I need it to be reasonably secure, too 😅 No idea yet, whether FastHTML would be my chosen tool (or one of them), but it certainly has an appeal! I very, very much want to separate the presentation and logic layers. But almost everything else would defer to achieving local- / offline-first, especially without the user needing to install any additional software. So, basically, I'm stuck with the browser, as far as I know.
Thanks for watching! It seems like you’ve got a more advanced web app in mind already 😅 As for the logic part, in my demo app, I kept it simple and squeezed everything into one file. Of course, you can separate it into different files or call other services/APIs if needed. That said, I’m not claiming to be a web developer - just a data guy dipping his toes into web development. But I’m enjoying it so far! Good luck with your project! Cheers, Sven ✌️
Thanks for the tutorial. I would have liked to see how or where you learned to code it together in the background or at least mention the resources though. I mean, watching you explain everything is one thing but knowing how to code it and troubleshoot on your own is another e.g. followed along till the supabase database execute() part then an error happened on my end.
Hi Sven. I really loved FastHTML however I legit have 0 info about HTML. Do you have any video recommendation about learning HTML so that we can build proper fastHTML websites? Thanks!
Thanks for watching! I’d recommend checking out the FreeCodeCamp YT channel. They have some great HTML tutorials to get you started. Happy coding! Cheers, Sven ✌️
Excellent video! Can you create offline web desktop applications with FastHTML? Meaning, the user can simply open a unzipped package with all the files and simply open index.html in his browser and it works just fine (of course ensuring no dependencies that connect to the internet / no APIs...)
Thanks for watching. Not sure, if I'm gonna recreate the Streamlit Sales Dashboard. If you are interested in how to use charts in fastHTML, then check out this demo: gallery.fastht.ml/vizualizations/plotly_charts/display Happy Coding! Cheers, Sven ✌️
Thanks for watching! Big question, but let me try to answer. Flask and Django are both web frameworks, but they differ in complexity. Flask is simpler and more lightweight (easier to get started with, in my opinion), while Django is a full-featured framework with built-in tools like database handling, user authentication, and an admin panel. Both frameworks are more focused on the backend, so you'll still need to write your own frontend code. For example, you could use Jinja templating in both Flask and Django for dynamic HTML generation, and then style it with CSS. Streamlit, on the other hand, is designed specifically for building data-focused applications. It comes with built-in components for displaying charts and data, but it's not as flexible as Flask or Django for general web development. It's great for quickly turning data and Python scripts into interactive apps but isn't built for complex web apps or custom frontends. Now, FastHTML combines the backend power of FastAPI (which is similar to Flask) but uses regular HTML tags for the frontend. Instead of Jinja for templating, FastHTML allows you to use dynamic elements with HTMX, making it easier to add interactive functionality without needing (a lot of) JavaScript. I hope it helps! Happy coding! Cheers, Sven ✌️
This looks kinda similar to Plotly Dash in terms of using Python to structure HTML. Probably would be easier and better to use raw HTML and htmx or maybe even just simple vanilla js?
Thanks for watching. I guess it depends on your preference. I never really got into learning JS. What I like is the idea of doing everything in Python. I used to build smaller backends with FastAPI, but now with FastHTML, I can also create the frontend with interactivity in a similar way. Cheers, Sven ✌️
Thanks for watching. I guess it depends on what you are comparing it to. For me, I found it quite intuitive. Basically, it's just writing HTML tags in Python and adding interactivity with HTMX. Over time, I am sure there will be community components that you can simply import, like a card, which is also showcased on the fastHTML website: www.fastht.ml/ Cheers, Sven ✌️