TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Dropbase – Build internal web apps with just Python

207 pointsby jimmyechanover 1 year ago
Hey HN, I’m Jimmy, co-founder of Dropbase (<a href="https:&#x2F;&#x2F;www.dropbase.io">https:&#x2F;&#x2F;www.dropbase.io</a>). We are an internal tools builder for Python developers. All you have to do is import any Python scripts&#x2F;libraries, declare UI components, and layer app permissions so you can share them with others.<p>We’re a middle ground between Airplane and Retool—simpler UI creation than Airplane, more code-centered than Retool. UI building is declarative and you can bind Python scripts&#x2F;functions to UI components. You can write Python scripts&#x2F;functions using our App Studio with support from a Python Language Server Protocol (LSP) for linting. Since the self-hosted worker directly references .py or .sql files in the filesystem, you can even write them on VSCode directly or import any other Python script or library.<p>Our app layout is highly opinionated to speed up app building. Instead of an open canvas for UI building, we just give you a main table view and a widget sidebar. This approach significantly reduces app-building time while still covering what most tools need: see some data and take actions based on it. It’s not flexible enough to do absolutely anything, but that’s the point—there’s a tradeoff between flexibility and speed. Dropbase gives you most of what you need, plus speed!<p>A neat feature we are experimenting with to build admin panels fast is “Smart Tables”. We convert any SQL SELECT statement (even across multiple joins and filters) into an inline editable table, like spreadsheets, without any additional code.<p>We have a hybrid hosting model that combines a self-hosted client and a worker server, with a backend API for app&#x2F;component definitions hosted by us to simplify pushing feature updates. The worker server sits in your machines so your sensitive data doesn’t leave your infra.<p>We’re Python-centric for now, but plan to add support for Rust, Go, and others later.<p>We made a few demo videos building common tools: - Customer approval tool: <a href="https:&#x2F;&#x2F;youtu.be&#x2F;A1MIIRNkv3Q" rel="nofollow noreferrer">https:&#x2F;&#x2F;youtu.be&#x2F;A1MIIRNkv3Q</a> - Data editing tool (with Smart Table): <a href="https:&#x2F;&#x2F;youtu.be&#x2F;R1cHO9lMRXo" rel="nofollow noreferrer">https:&#x2F;&#x2F;youtu.be&#x2F;R1cHO9lMRXo</a><p>To try Dropbase, create an account at <a href="https:&#x2F;&#x2F;app.dropbase.io">https:&#x2F;&#x2F;app.dropbase.io</a> and generate a token, then follow these instructions for local setup: <a href="https:&#x2F;&#x2F;docs.dropbase.io&#x2F;setup&#x2F;developer">https:&#x2F;&#x2F;docs.dropbase.io&#x2F;setup&#x2F;developer</a>.<p>We are very early so we&#x27;re really excited to get your feedback, especially on our approach to tools building with Python! My co-founder Ayazhan and some of our teammates will be around to answer questions.

29 comments

cjohnson318over 1 year ago
Hell yeah. I build internal web apps with Django. I&#x27;ll definitely try this out in my upcoming project. Some major pain points are going past tables of data to (1) graphs (2) create&#x2F;update modals (3) cron jobs. I&#x27;ve used and contributed to some plotting library I don&#x27;t remember. For modals I usually use Vue+Primevue and for cron jobs I use celery+redis. Login is a pain, but it&#x27;s mostly a solved problem on my end.
评论 #38536215 未加载
blandryover 1 year ago
Looks cool! I think there is a huge need for tools like this, especially as AI turns more subject matter experts into programmers who can code a bit of python.<p>At my company we have recently started using NiceGUI which is a python wrapper for quasars+tailwind and seems like a very similar product. I’ve found it has a great level of abstraction that enables you to do Python only web App development without too much magic, but also lets you sprinkle in some CSS and javascript if needed.
评论 #38540508 未加载
评论 #38539113 未加载
waydeggover 1 year ago
FastUI (<a href="https:&#x2F;&#x2F;github.com&#x2F;samuelcolvin&#x2F;FastUI">https:&#x2F;&#x2F;github.com&#x2F;samuelcolvin&#x2F;FastUI</a>), a fully OSS Python-to-React library was just launched recently too
评论 #38537914 未加载
Uptrendaover 1 year ago
You&#x27;ve chosen a really bizarre way to package your software. I&#x27;m looking through your repo and can&#x27;t see any code for your libraries. It seems like its somehow part of the docker image? So then this is just a shim for a docker environment that contains the code? Normally people would use Github for a hosted repo and make their software available on Pypi. But deploying with a docker file is kind of opaque and sketchy.<p>I would give better feedback but still no easy way to see the code? Unless you&#x27;re trying to do it like this to have something like a closed-source version of your libraries... which would again be kind of a bizarre model to use with Python.
评论 #38540757 未加载
dfthinkpadover 1 year ago
I am confused on why I need to sign up for an account to try it on my machine?
评论 #38536961 未加载
edmundsautoover 1 year ago
Very cool, thank you for sharing!<p>Do you consider your customer path someone coming from e.g. Airtable and converting? Or are you looking to find someone who would be choosing Django for their next project?<p>(This looks like something I would use Django for, although the additional building blocks are nice sugar on top too)
评论 #38536285 未加载
sligover 1 year ago
Congrats on launching!<p>&gt; a backend API for app&#x2F;component definitions hosted by us to simplify pushing feature updates<p>Any plans to open-source that part as well?
评论 #38536582 未加载
lysecretover 1 year ago
That looks fantastic! I own a startup where we used to relay he-vea-ly on retool (until we could automate most of the Retool work with ChatGpt haha).<p>I would have tried out your approach if it was out back then, I am much more well-versed in Python than JS. Having some way to write code in files, and then link it to the table structure makes a lot of sense (having lots of spaghetti code all over the place was one of the core issues of Retool, also it became slooooow at some point). Simplifying to a table + sidebar view is a very good idea (that&#x27;s all we ever did).
评论 #38543339 未加载
d4rkp4tternover 1 year ago
Chainlit is my new favorite Python webapp framework, it’s especially geared toward UI for LLM chat apps. (It has nothing to do with LangChain fortunately, though it does support it and the name probably is inspired by it).<p>There are unique challenges in making a decent looking chat app. State management is one such. Streamlit’s approach is to rerun the script on every action, which means your code needs to be aware of this, and this usually results in headaches and spaghetti code. Chainlit has a clean approach — I don’t know what they do under the hood but at least from a dev POV it’s far simpler.<p>I’d be interested to see how a basic chat app is built with Dropbase so I can compare.
评论 #38546444 未加载
twismover 1 year ago
why the internal moniker ...what stops this from being &quot;external&quot; facing?
评论 #38536551 未加载
评论 #38536393 未加载
spapas82over 1 year ago
This is interesting, congrats! I&#x27;d really like to try it on my own, without booking a demo. Is it possible somehow ?<p>Thank you!
评论 #38543481 未加载
KRAKRISMOTTover 1 year ago
<a href="https:&#x2F;&#x2F;anvil.works" rel="nofollow noreferrer">https:&#x2F;&#x2F;anvil.works</a> is excellent
评论 #38546453 未加载
YaBaover 1 year ago
Looks nice, but I&#x27;ll pass and stick to streamlit.io as they don&#x27;t require an account and a connection between MY app and YOUR server for some misterious reason which is not clear anywhere.
评论 #38561303 未加载
mastaziover 1 year ago
What makes a web app &quot;internal&quot;? Does it mean it&#x27;s just made to be run on localhost? Does it mean it would not run on a server? How so?<p>Also, why using this vs creating a desktop app? (There are ways to create GUI desktop apps in Python)
评论 #38538320 未加载
goerchwover 1 year ago
Interesting. How does this compare to <a href="https:&#x2F;&#x2F;flask-appbuilder.readthedocs.io&#x2F;en&#x2F;latest&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;flask-appbuilder.readthedocs.io&#x2F;en&#x2F;latest&#x2F;</a>?
评论 #38536927 未加载
pythonbaseover 1 year ago
Looks cool. I have so many internal scripts that need a face&#x2F;UI.
评论 #38543509 未加载
kak3aover 1 year ago
Did you guys pivoted Dropbase from CSV analytics to internal app builder? Interesting move. Internal.io just sunsetted. Maybe Dropbase has what it takes and finding its P&#x2F;M fit.
评论 #38538772 未加载
jimmyechanover 1 year ago
Thanks HN! Really appreciate your input! Gotta sign off now though, it&#x27;s getting late for me. I might answer some more questions in the morning if this is still on!
sirjazover 1 year ago
It would be great if this could generate a desktop app rather than another webapp that I need to host somewhere. We need to focus on desktop apps again.
评论 #38540487 未加载
评论 #38550680 未加载
apstatsover 1 year ago
This is really cool. I know lots of banks and trading firms have built home grown tools that do something similar to this.
评论 #38540539 未加载
3abitonover 1 year ago
How does it compare with other tools like flask and django?
评论 #38543433 未加载
jiurenover 1 year ago
There are plenty tools like this, plolty dash, justpy, nicegui, lona, reflex, streamlit, just to name a few. If your app does not involve complicated interactions, streamlit is really easy to pick up. We also had a great experience with plotly dash for a more complicated application. nicegui also seems very promising.
评论 #38540782 未加载
评论 #38540790 未加载
评论 #38540680 未加载
kelvinzhangover 1 year ago
We definitely need more ways to build quick web UIs for Python code. Looks sick!
评论 #38537497 未加载
评论 #38537340 未加载
评论 #38537322 未加载
otabdeveloper4over 1 year ago
So it&#x27;s an agent that phones home and exfiltrates all your sensitive corporate data to the public cloud?<p>Lol.<p>I understand that SaaS is the only way to monetize software projects in 2023, but this whole setup is not defensible.
评论 #38546697 未加载
foxbeeover 1 year ago
How would you compare this to tools like Budibase?
评论 #38546486 未加载
评论 #38536987 未加载
jawnsover 1 year ago
I am surprised that lack of control and customizability over the frontend is being billed as a feature.<p>I&#x27;ve built multiple internal tools like those in the example section, and even with a solid framework like react-admin, one of the first requests you&#x27;re going to get from internal stakeholders is tweaks to the UI.<p>It&#x27;s a myth that internal users aren&#x27;t as demanding as external stakeholders. If anything, they can be more pushy.<p>I would not want to launch an internal tool, except as an engineering-only POC, unless customizing the frontend were at least as easy as customizing the backend.
评论 #38539356 未加载
评论 #38539346 未加载
throwaway81523over 1 year ago
I&#x27;ve done plenty of internal web apps with Python&#x27;s old cgi module and it&#x27;s really about the simplest approach. Too bad the cgi module has recently been removed from Python due to some weird neurosis about underused modules. It&#x27;s still possible to side-load it from someplace though.
评论 #38537636 未加载
评论 #38537130 未加载
评论 #38539352 未加载
azazel75over 1 year ago
The license kinda sucks though: ``` 3. USE RESTRICTIONS<p>Licensee is expressly forbidden from:<p>(a) Incorporating, modifying, or using the Software as part of any other product or service; ```
评论 #38536896 未加载
评论 #38536587 未加载
评论 #38537043 未加载
joshstrangeover 1 year ago
I&#x27;d love a TypeScript&#x2F;NodeJS version of this, this looks really neat but I prefer TypeScript over Python.
评论 #38541841 未加载
评论 #38541033 未加载