Our great sponsors
-
django-with-microk8s
A simple demonstration of how a django-based website can be set up for local development with microk8s
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
ag-Grid
The best JavaScript Data Table for building Enterprise Applications. Supports React / Angular / Vue / Plain JavaScript.
You have two possible directions to go with your client side in-browser visualizations if you're going to build a web app yourself instead of using Dash (which I've never used and looks $$$$$). What you choose will depend on the use case and your desired skill set. You can either render images / html server side and then display it in the browser, or you can pipe all of the data through to the front end and then use a javascript framework to render the visualizations. Given you have already created visualizations using plotly, I suspect the server side render-and-display approach is the way to go for you. As a side note, if it takes a while to process the .ifc files, you may need to make the whole process asynchronous, with upload/display/download steps on different pages, and some kind of task queue in the background (in which case I recommend celery). I've put together a github repo with a basic django environment with the intention to help people who are new to django get started, feel free to try it and let me know whether it's helpful: https://github.com/bluemoo/django-with-microk8s
There is also kind of a third way, which might be a lot less work for you. Things like Django ChartJS work inside Django to render charts on the browser. It's basically a wrapper around that client-side work, so you don't have to learn much JavaScript, but won't end up being as flexible.
Most professional projects would take a client-side approach, because you get a lot better interactivity with it and because it takes load off of the server and puts it on the client, where it's "free" compute time. If you go with a client-side approach, you could use things like ChartJS or AG-Grid. I don't know what's really considered best, because I don't do many data visualization projects.
Most professional projects would take a client-side approach, because you get a lot better interactivity with it and because it takes load off of the server and puts it on the client, where it's "free" compute time. If you go with a client-side approach, you could use things like ChartJS or AG-Grid. I don't know what's really considered best, because I don't do many data visualization projects.