[HN Gopher] Show HN: Open-source alternative to Retool, Internal...
       ___________________________________________________________________
        
       Show HN: Open-source alternative to Retool, Internal.io, etc.
        
       Author : navaneethpk
       Score  : 372 points
       Date   : 2021-06-07 11:44 UTC (11 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | replwoacause wrote:
       | Good job navaneethpk, this looks really nice!
        
       | hliyan wrote:
       | "Setup" goes to 404:
       | https://docs.tooljet.io/docs/setup/architecture
        
         | navaneethpk wrote:
         | Aplogies, please use this link:
         | https://docs.tooljet.io/docs/deployment/architecture I recently
         | changed the structure of documentation, probably forgot to
         | change the url somewhere. Will fix it in a while.
        
         | debarshri wrote:
         | This goes in an infinite loop now.
        
           | [deleted]
        
             | [deleted]
        
       | [deleted]
        
       | [deleted]
        
       | maxdo wrote:
       | Is there anything similar with nodejs backend ? Having ruby is a
       | big downside since you need extra engineer with ruby knowledge in
       | the team.
        
       | krishvs wrote:
       | Looks great!
       | 
       | How do you sandbox custom js code. Can we choose if it runs on
       | the front-end or server-side?
       | 
       | Most of the low-code opensource builders seems to run it on a
       | sandbox in the frontend using realms..but this is not great if a
       | screen needs to perform calculations that affect financial data
       | like a mini POS, tax calc etc
        
         | hetunandu wrote:
         | Is the concern with running JS on the client side regarding
         | security? At Appsmith we run user code inside a worker to avoid
         | malicious code from accessing many browser apis. We also plan
         | to add the ability to run the JS code on the server and have it
         | run via web hooks for automation use cases. I wrote how we do
         | it at Appsmith a few months back:
         | 
         | https://blog.appsmith.com/evaluating-js-in-the-browser-for-a...
        
       | SemiNormal wrote:
       | So this is like a web version of Filemaker?
        
       | Artistry121 wrote:
       | This space is very hot right now. This looks amazing. I can't
       | wait to use it.
       | 
       | ToolJet, NocoDB, fabrica.dev are all projects I've found recently
       | in this space.
       | 
       | I've been really thinking a lot about how to bring tools like
       | this to businesses and make them useful. I still think there's a
       | lot of training and material needed to make these ultimately
       | powerful. Love Open Source!
        
         | dreamer7 wrote:
         | We definitely need good reviews comparing all the different
         | options. Hard to know the pros and cons of each solution
         | quickly. Appsmith, Saltcorn, Budibase were three others I came
         | across today
        
       | [deleted]
        
       | gervwyk wrote:
       | Congrats on the launch! This is really cool. We created Lowdefy
       | [0] to build similar apps but with a "no-gui" approach. I have
       | great respect for how much work this is. Even the website looks
       | great!
       | 
       | [0] - https://github.com/lowdefy/lowdefy
        
       | codingdave wrote:
       | I feel like low-code apps like this have hit commodity level.
       | 
       | A bit of history - in the late 90s, you could (and we did) build
       | a multi-million dollar product doing basic content management for
       | plain old web pages. That heydey lasted a couple years before
       | Wordpress and other such tools came around and basic CMS was more
       | of a solved problem than a unique product.
       | 
       | The same has occurred over the years in multiple niches - a tool
       | that would have been a terrific SaaS at one point gets built out,
       | normalized, and well understood... to the point that it is no
       | longer a unique value prop to just build a tool that solves
       | problem X. You need to build the tool AND have some unique
       | perspective and value prop that escalates it above all the
       | others.
       | 
       | Low-code CRUD builders with DB integration and some basic
       | workflow, reporting, and security now have hit that mark. There
       | have always been big players in this market (Microsoft, IBM,
       | Salesforce, etc.) It is good to see smaller players coming into
       | their own in recent years, and this specific one is open source,
       | which is a nice differentiator between it and many others.
        
         | ishikawa wrote:
         | For me the problem is that they usually don't reach a good
         | maturity level, but the idea in my opinion is very important.
         | To mention the 90s again, you could do in one day an internal
         | app using MS Access. Now if you want it with web interface, you
         | have to think about front-end, back-end, database, devops. It
         | is just too much for when you want a simple thing.
        
       | arey_abhishek wrote:
       | Pretty cool project to build in 7 weeks! Congratulations! Your
       | lockdown has been way more productive than for some of us.
       | 
       | I'm a founder of Appsmith, which Tooljet mentions in the GitHub
       | project as an inspiration.
       | https://github.com/appsmithorg/appsmith
       | 
       | We are an Apache 2.0 licensed internal apps builder that's being
       | used by teams in Adobe, IBM, MSFT, Rappi, Swiggy, and 1000's of
       | other companies.
       | 
       | Difference vs. other projects mentioned here: 1. Community
       | edition is free for unlimited users 2. Great developer
       | experience(local development, debugging, & Git sync is coming
       | soon) 3. Pricing model will be usage based and not user based
        
         | dreamer7 wrote:
         | Congratulations on the launch! What would you say is the main
         | reasons why one should choose you over other open source
         | solutions like Appsmith and Budibase?
         | 
         | PS: Small typo on the docs -
         | https://docs.tooljet.io/docs/intro/
         | 
         | > but in case you are stuck, please feel to mail us:
        
       | thedangler wrote:
       | Is there a way to deploy a tool to end users only? Say I build
       | something with this system, but I want to give end users read
       | access only on my website or backend system?
        
         | 3np wrote:
         | Can you reformulate that? I've read this several time and still
         | not sure what you are asking for.
         | 
         | Do you want to restrict access? If so easiest should be to put
         | a load balancer (For example haproxy, or whatever you use
         | already) with auth
        
       | AYBABTME wrote:
       | Before I could give more of a look into it, the license jumped at
       | me. What's the idea behind using GPLv3? Who do you want to enable
       | to use this, versus whom are you trying to prevent from using
       | this?
        
         | cxr wrote:
         | GPLv3 has an elaborate preamble, which should be able to answer
         | some of your questions. In particular, wrt "whom are you trying
         | to prevent from using this", it mentions things such as:
         | 
         |  _we wish to avoid the special danger that patents applied to a
         | free program could make it effectively proprietary_
         | 
         | and:
         | 
         |  _if you distribute copies of such a program, whether gratis or
         | for a fee, [...] You must make sure that they, too, receive or
         | can get the source code_
         | 
         | So, given that the GPL says these things, and the author has
         | selected the GPL for this project, by a reasonable guess the
         | answer to your question is, "people who would otherwise do/not
         | do those things".
         | 
         | Rather than adding a TODO item onto the list of the person who
         | has already gifted this to us, where that item would involve
         | the labor of enumerating over a set of scenarios, composing a
         | response to you, and hoping that it answers your question, how
         | about helping both them and yourself by inverting the workload
         | and elaborating on what you mean?
         | 
         | GPLv3 doesn't prevent anyone from using the covered software.
         | Who do you think is prevented from using this? Do you consider
         | the GPL to be a bad choice for some other reason, and you think
         | there is a compelling reason to do something else? What are
         | those reasons?
         | 
         | And ultimately, this is software that is being provided to you,
         | generously, at no cost, and the author has gone out of their
         | way to let you do stuff with it that you otherwise wouldn't be
         | able to do. If it doesn't suit you and you don't want to "give
         | more of a look into it", then don't.
        
         | pavlov wrote:
         | Maybe your question should be more specific. What use case do
         | you have for this project that you believe might be
         | inconvenienced by GPL?
         | 
         | Without that, it sounds like you're spreading FUD about GPL.
        
         | [deleted]
        
       | orliesaurus wrote:
       | Hey @navaneethpk,
       | 
       | Congrats on the launch! How do you plan to monetize this on the
       | long term - if you are? Premium plugins? Fully managed paid
       | hosted version?
        
       | navaneethpk wrote:
       | Founder here,
       | 
       | ToolJet is a no-code platform for building & deploying custom
       | internal tools. ToolJet is built using Ruby on Rails and ReactJS.
       | ToolJet can connect to existing data sources of companies such as
       | databases, Google sheets, API endpoints, external services, and
       | more. ToolJet's drag and drop app builder can quickly create UI
       | widgets such as tables, charts, forms, etc and connect these
       | widgets with the data from data sources.
       | 
       | I have been dabbling with the idea of ToolJet for a while. but
       | the real progress happened over the last 7 weeks while I was in
       | quarantine. One of my family members tested positive for covid
       | and then came to the state-mandated lockdown. Not being able to
       | step out of my home has been particularly hard, but nevertheless
       | gave birth to ToolJet.
       | 
       | I believe that the tools that require access to sensitive data
       | should be self-hosted ( data never leaves the premises) and open-
       | source ( modify the software to fit organization-specific
       | requirements ).
        
         | e12e wrote:
         | This looks very interesting... But no tests?
         | 
         | I'm not 100% happy with a project at work, where we're building
         | out a jsonapi from a legacy rails app (part rewrite in-place,
         | part move to react for front-end) - and after setting it up
         | rswag with integration tests generating swagger schemas has
         | been pretty nice. Not quite decided on what I think about
         | activemodel::serializer... But it mostly works, without too
         | much tweaking.
         | 
         | I've also adopted some ideas from:
         | 
         | https://github.com/guillaumebriday/jsonapi-scopes
         | 
         | For filtering/sorting - I think something like it should be in
         | rails, really.
         | 
         | Rswag: https://github.com/rswag/rswag
        
           | navaneethpk wrote:
           | Rswag looks cool, will try it out. There are tests for rails
           | controllers and I have recently setup Cypress for component
           | testing, will be focusing on tests the coming days.
        
             | e12e wrote:
             | > There are tests for rails controllers
             | 
             | I only found one:
             | 
             | https://github.com/ToolJet/ToolJet/blob/develop/test/contro
             | l...
             | 
             | The others appear to be empty scaffolds (which imnho is
             | worse than no tests, really), eg:
             | 
             | https://github.com/ToolJet/ToolJet/blob/develop/test/contro
             | l...                 require "test_helper"            class
             | FoldersControllerTest < ActionDispatch::IntegrationTest
             | # test "the truth" do         #   assert true         # end
             | end
             | 
             | Same for empty model tests etc - I'd strongly encourage
             | removing them - as they just add noise.
             | 
             | Btw, if not doing tdd, time is probably better spent on
             | integration tests than controller/model tests. Main
             | challenge I've found with rails projects that were put in
             | use with _no_ tests, is there 's a big effort to set up
             | test data/fixtures from scratch. One option can sometimes
             | be to just set up a test database with real data (database
             | dump as a fixture).
             | 
             | > and I have recently setup Cypress for component testing
             | 
             | That's nice, and probably a good focus for a project like
             | this.
             | 
             | Ed: as for mocking/integration testing apis - which might
             | be useful here, there's "vcr": https://github.com/vcr/vcr
        
         | foxbee wrote:
         | Wow! Building this in 7 weeks is an incredible feat. I am the
         | cofounder of Budibase - an open source alt to Retool, Mendix,
         | Outsystems - and have been building it for around 2 years now.
         | 
         | It's an incredible space and solves a burning problem for
         | engineers, IT teams and business users.
         | 
         | We're seeing major benefits of being open source, with the like
         | of the NHS, Amazon, Deloitte and other major orgs choosing
         | Budibase over proprietary alternatives, so I would say your
         | decision to offer self-hosting was a good one.
         | 
         | As much as we are probably seen as competitors, I wish you well
         | and I am happy to share notes if you would like a call?
         | 
         | https://github.com/Budibase/budibase
        
           | sdesol wrote:
           | > Wow! Building this in 7 weeks is an incredible feat.
           | 
           | Here is an analysis of Tooljet development in the last 90
           | days
           | 
           | https://public-001.gitsense.com/insights/github/repos?q=wind.
           | ..
           | 
           | I also did one for budibase as well
           | 
           | https://public-001.gitsense.com/insights/github/repos?q=wind.
           | ..
           | 
           | Disclaimer: I'm the creator of GitSense
        
             | foxbee wrote:
             | Awesome tool. Have you considered adding support/analytics
             | around Github discussions?
        
               | sdesol wrote:
               | I actually want to index everything in the software
               | development lifecycle, which will include GitHub
               | discussions. The issue right now is I'm a sole founder
               | and I can only implement so many features and I am
               | looking for investors right now (ping me if you think you
               | can help with introductions) to tackle what you
               | suggested.
               | 
               | I really do want to index everything from meetings,
               | emails, time between design docs and so forth. Indexing
               | GitHub discussions is very important since it takes
               | effort to engage people and I want to best capture effort
               | so that developers can say "1 line of code" took more
               | effort than you can imagine.
        
               | foxbee wrote:
               | Awesome. It's a big task, and I wish you all the best.
               | Not sure I can help with investors though.
        
             | redstripe wrote:
             | Hi there, nice site.
             | 
             | I'm really like this combined side scrolling table + graph
             | component you use on the pulse page. Looking at the source
             | I see a mention of echarts in the html but I don't think
             | I've seen anything like that in their examples.
             | 
             | Did you build this yourself as a custom rendered chart or
             | is this something that someone else built?
        
               | sdesol wrote:
               | All the charts are by echarts. For the timeline chart
               | (the one in the pulse view) think of it as a scatter
               | chart that is zoomed in. echarts provides labels and
               | drawing lines and other things which is how I was able to
               | create the timeline chart.
        
             | riku_iki wrote:
             | Why no LoC included, it seems most useful metric. Also bugs
             | filed/fixed would be helpful too.
             | 
             | Thank you for your effort!
        
               | sdesol wrote:
               | > Why no LoC included
               | 
               | LoC invokes PTSD for many developers and I honestly want
               | to do it right, which will take a bit effort and thinking
               | on my part. For example, when providing LoC, I want to be
               | able to break it down into useful information like
               | (isolated code, used here and there) and so forth.
               | 
               | I want LoC to help us understand the significance of
               | going from one revision to another, so that LoC can be
               | used to help us drive actionable insights.
               | 
               | Edit: Just realized I never addressed your other points
               | which is I do want to index and provide insights into
               | everything in the software development lifecycle, it's
               | just that I'm bound by resource constraints right now.
        
             | gervwyk wrote:
             | Nice! GitSense is really cool. I recently enjoyed this
             | dashboard [0], which is more basic and focused on tracking
             | project popularity. Is there a way for me to add Lowdefy
             | [1] to GitSense?
             | 
             | [0] - https://osschott.metabaseapp.com/public/dashboard/ece
             | 8baa7-7... [1] - https://github.com/lowdefy/lowdefy
        
             | hangtwenty wrote:
             | GitSense seems very useful. Constructive feedback about the
             | UI: replace the (straggler?) serif font with the sans serif
             | font you're using elsewhere on the page
        
               | sdesol wrote:
               | Thanks for the feedback. I'm the sole founder behind
               | GitSense and to be honest, there are too many stragglers
               | and things I should have done better. It's just that my
               | time is pulled in so many different directions, with the
               | business side of things occupying most of it right now.
               | 
               | Thanks for commenting and yeah I do want to ensure
               | everything is sans serif. I think I get a pass though,
               | since I do have the beta label on the tool :-)
        
           | swyx wrote:
           | I have to say I was very impressed when I tried out Budibase
           | and was able to create a CRUD app out of the box without
           | looking at docs. You guys are easier to use than Retool --
           | and self hostable/open source!!
           | 
           | i have no idea what it's like to work on this problem for 2
           | years but really looking forward to see what you become. the
           | youtube updates are super helpful btw pls keep that up
        
             | foxbee wrote:
             | Appreciate your feedback. With the latest release, we're in
             | a much better position to release quicker, and communicate
             | better.
             | 
             | We're still in beta, and yet to launch to Hackernews, PH,
             | etc, so looking forward to that over the next few months.
        
           | moosebear847 wrote:
           | Would this be considered product thread hijacking? The
           | 'compliment' could also be interpreted as a disguised subtle
           | diss (7wk product vs 2yr one)..
        
             | foxbee wrote:
             | It's not a diss. It is a compliment.
        
           | navaneethpk wrote:
           | Thanks :)
           | 
           | Sure, would love to talk. Please send me an email so that we
           | can schedule a call. ( navaneeth@tooljet.io )
        
             | alexkreidler wrote:
             | Would you two be able to share some take-aways from that
             | conversation at some point? Maybe write up a short
             | comparison of the projects as they are now and any
             | differences in roadmap/vision that could be relevant.
             | 
             | I always appreciate when OSS projects put in effort to
             | understand and position themselves in relation to
             | competitors (or potential collaborators).
             | 
             | Also want to mention some open-source React visual drag and
             | drop page editors that might be useful for inspiration or
             | to eliminate possible duplicate work. There's OpenChakra
             | [0] and Blocks [1], which are apps, and then there's
             | craft.js, a library that aims to modularize "the building
             | blocks of a page editor" and seems to have more emphasis on
             | customizing the actual editor UI.
             | 
             | Best of luck to you both!
             | 
             | [0] https://github.com/premieroctet/openchakra [1]
             | https://github.com/blocks/blocks [2]
             | https://github.com/prevwong/craft.js
        
             | foxbee wrote:
             | awesome. I'll ping you later
        
           | Artistry121 wrote:
           | Hey! I've been following Budibase too You're doing great too.
           | 
           | I want to do implementations for projects like this and
           | trainings around it. There is so much power in these tools
           | its amazing.
           | 
           | Can we talk too? andrew AT amescher.com
        
             | foxbee wrote:
             | Hey - of course we can. I'll email you ASAP
        
           | mike_chuckles wrote:
           | I've been playing with this for a little while now, really
           | like the fact this takes over a lot of the management issues
           | as well like handling email templating and all those nitty
           | gritty bits that would otherwise be a pain!
           | 
           | Looking forward to seeing where this goes over the next
           | while!
        
             | foxbee wrote:
             | Thanks for the feedback. Our latest release has received
             | great feedback to date. There are a lot of IT professionals
             | out there who don't want to deal with onboarding,
             | adding/removing users and forgot password flows.
             | 
             | I'd love to hear more about your use cases if you have the
             | time:
             | 
             | calendly.com dash budibase
        
               | mike_chuckles wrote:
               | I'll get in touch, thanks!
        
         | victor106 wrote:
         | This looks cool. What did you use to generate the
         | documentation? https://docs.tooljet.io/docs/intro/
        
           | theturtletalks wrote:
           | Looks like Docusaurus.
           | 
           | Check out Wappalyzer[0], it's an open source plug-in that
           | tells you what technologies a website is using.
           | 
           | 0. https://github.com/AliasIO/wappalyzer
        
           | navaneethpk wrote:
           | Docusaurus - It's easy to customise and good enough even
           | without customisations.
        
         | samfisher83 wrote:
         | Appsmith is also open source, but this looks great. Can't
         | believe you knocked it out in 7 weeks.
        
           | pplonski86 wrote:
           | Same here, the website and product looks impressive.
           | @navaneethpk how many hours a day have you been coding? Do
           | you use some ready templates or boilerplates?
        
             | navaneethpk wrote:
             | 8-10 hours a day :) Using Tabler for builiding the user
             | interface helped me speed up the development.
        
         | ianpurton wrote:
         | Any ideas how you will differentiate yourself from Appsmith?
         | (which looks similar but more developed)
        
         | seeekr wrote:
         | Impressive amount of work for 7 weeks! Looking forward to
         | trying it out, super welcome tool!
        
           | stanislavb wrote:
           | It demonstrates what a skilled Rails developer can achieve by
           | himself. It's not a surprise that so many successful startups
           | are still built with Ruby on Rails regularly.
        
         | ishikawa wrote:
         | That is a very great job. Congrats! My feedback is to make it
         | flexible on charts and easy to create admin panels.
        
         | jawns wrote:
         | Can you give a brief breakdown of what features are the same
         | between ToolJet and a service like Retool, what features are
         | different, which ones are intentionally left out, and how close
         | to feature parity you're hoping to get?
        
           | navaneethpk wrote:
           | There are many similar features such as: a) The ability to
           | fetch & merge data from multiple data sources b) Widgets such
           | as tables, charts & forms
           | 
           | The goal is to build more connectors and widgets while
           | ignoring features that will not makes sense for majority of
           | the users. Example of a feature that's intentionally left out
           | (for now) is the schema browser for databases.
           | 
           | Also, thanks for pointing out the typo, fixed it :)
        
       | pplonski86 wrote:
       | Congratulations on launch!
       | 
       | Got a question. What do you think, is it possible to create
       | internal tools as desktop apps that doesn't need servers/internet
       | connection? I understand that your product is web based, so
       | doesnt have such desktop-app feature. Can you recommend any no-
       | code tool for building desktop based apps?
        
         | navaneethpk wrote:
         | Budibase have a desktop app, not sure if the apps built can run
         | without internet.
        
           | FractalHQ wrote:
           | They just phased it out to focus on the browser version iirc
        
       | sam0x17 wrote:
       | For people in the ruby/rails/active record ecosystem, rails_admin
       | as always remains a fantastic choice
        
       ___________________________________________________________________
       (page generated 2021-06-07 23:01 UTC)