Combining the Power of DevOps and Low-Code with Appsmith
Creating internal tools to streamline and improve operations is easier said than done. Most who try quickly run into a tradeoff, asking themselves whether they should build all internal tools in-house with traditional development or rely on out-of-the-box automations from a low-code platform that doesn’t fit well within their normal CI/CD processes.
With Appsmith, you no longer have to choose. Developers have full flexibility and can work with the industry-standard tools and practices they are already familiar with, including version control, CI/CD, and self-hosting. This allows developers to follow DevOps best practices and ensures the long-term viability of your tools.
Defining the build vs. buy problem for developers
Building internal tools from scratch allows you to have complete control, customization, and governance over your applications and data. Unfortunately, it comes at the cost of time-consuming development processes and ongoing maintenance — overheads that discourage many businesses from taking this route.
Enterprise low-code platforms address some of these issues by allowing you to quickly build internal tools with a streamlined toolset, professional support, and managed hosting with SLAs. However, they come at the cost of vendor lock-in, as critical business infrastructure is on somebody else’s platform with proprietary scripting languages and limited exporting options. They also provide limited customization, as they usually only allow you to do 80%–90% of what you really want with your tools.
While developers will be drawn to building from scratch (they're developers, after all!), this may not appeal to other stakeholders who want to prioritize delivery time and costs and would prefer to use off-the-shelf tools or to expedite development by using an app platform. You need a best-of-both-worlds solution that allows you to easily integrate with internal systems without rebuilding everything from scratch while still giving you complete control over your tools.
Self-hosting puts you in full control of low-code deployment
Appsmith offers a best-of-both-worlds solution: Our developer-focused app platform rapidly speeds up developing, testing, and deploying internal apps. It allows you to write your own code, queries, and components for full flexibility, all while being open-source and self-hosted. We also have security certifications that meet the requirements of SOC2, HIPAA, and GDPR, which are game changers for highly regulated industries like finance and healthcare where data privacy and security are paramount.
Security that meets international and industry standards
When building Appsmith, we closely followed the 12-factor app methodology for building portabile and resilient apps. That means our low-code open-source platform can be securely hosted on your own infrastructure, no matter what it is.
We’ve built Appsmith to streamline onboarding and minimize configuration errors that can lead to data leaks and breaches. Appsmith typically runs in a single Docker container, which makes it easy to install on your on-prem servers (or even your laptop!). We followed a monolithic architecture, but it can be detached to run on stateless and serverless architectures as well.
Host Appsmith anywhere and everywhere
We also support deployment to all major cloud providers with pre-built images:
Cloud Provider | Service | Description |
AWS | Appsmith can be installed using an AWS AMI (Amazon Machine Image) at this link. | |
AWS | Appsmith ships as a single Docker container, so run it using AWS ECS (Elastic Container Service) using an EC2 instance. | |
AWS | Appsmith ships as a single Docker container, so run it using AWS ECS (Elastic Container Service) using Fargate. | |
AWS | Appsmith supports deployment through EKS (Elastic Kubernetes Service). | |
Google Cloud | You can deploy Appsmith directly to Google Cloud Run. | |
Google Cloud | GKE | You can deploy Appsmith with GKE (Google Kubernetes Engine) as well. In fact, we even provide our own Helm Chart, which makes Kubernetes deployments a breeze. |
Azure | Appsmith supports deployment on an ACI (Azure Container Instance). | |
DigitalOcean | You can install Appsmith onto DigitalOcean using a Droplet in the DigitalOcean one-click apps marketplace. |
Appsmith also supports more advanced deployment options as well, including multi or hybrid cloud deployments for scalability and data protection.
Infrastructure as Code with Terraform
If you want to adopt Infrastructure as Code, Appsmith supports deploying to AWS and Google Cloud using Terraformthrough our Terraform modules. In your Terraform configuration files, you can provision all cloud infrastructure like storage, file servers, cloud run services, network configurations, and more.
Unlike other low-code platforms, Appsmith doesn't hold you back with infrastructure constraints. If you have an architecture, we fit in. Also, feel free to chat with our engineers on Discord to discuss your exact requirements and receive deployment advice for your scenario.
Low-code that integrates into your DevOps processes, SDLC, and CI/CD Pipelines
One major issue we see with most low-code platforms is that they’re often treated as separate SaaS tools because the apps you build with them can’t be added to repositories or have automated tests and code verification processes. These tools are often lacking the basics of a CI/CD process which makes them very difficult to integrate into your SDLC.
Low-code tools don’t have to be that way. With Appsmith, your low-code platform isn't just another SaaS tool but a full-fledged member of your development team. Every change, every improvement, and every deployment can be as seamless as pushing a commit. This allows you to maintain code quality and deploy rapidly, just like with your full-code applications, while also maintaining the benefits offered by low-code.
With Appsmith's native Git integration, each low-code application that you build can be linked to a Git repository and integrated into your existing workflows. That way, you can develop your low-code apps just like the other apps you develop by integrating your tried-and-true SDLC and CI/CD tools.
Appsmith outputs code that's friendly with version control
In Appsmith, your front-end code is plain JavaScript — there's no proprietary scripting languages! User interface widgets and back-end queries are all stored in JSON form format that can be easily saved in source control (so there are no serialized blobs that are difficult to understand!). Combined with our Git implementation, code is easy to review, test, and deploy.
What does CI/CD look like with Appsmith?
We’ve explained how Appsmith recognizes DevOps best practices and doesn't limit how and where you deploy your code. Now we can show it to you in action. To start, you need to choose the right branching strategy for your project, just like you normally would. In Appsmith, you can create branches (like a feature branch, for example) with a few clicks and add branch protections so that you don’t accidentally commit to master without a PR.
After creating a branch locally, you can make changes to your low-code app, implement new features or fix bugs just as you normally would, then commit your changes to Git right from the Appsmith interface. Appsmith also shows which components of your application changed (low-code git diff functionality) before committing. git push operations will happen automatically after every commit to keep your local and remote repositories synced.
After pushing your changes to a private branch, you can open a PR from your internal or external Git repository just as you already do in your traditional software development workflows. From there, CI tests can be run automatically on all commits to branches with open PRs.
Finally, Appsmith allows you to generate delivery pipelines from your Git repository to your Appsmith application on the Continuous delivery tab in Appsmith’s Git settings. This automates deployment and ensures that the users of your low-code application always have the latest and greatest versions of your apps.
The recording below shows how these components come together to create a standard Git workflow with Appsmith using one feature branch with GitLab hosting the remote repository.
Developer-first low-code that doesn't hinder innovation
You can host Appsmith wherever and however you want, and you can use it to rapidly develop low-code applications with all of the standard DevOps processes that developers expect, including versioning, parallel development, and CI/CD.
It has all of the benefits of low-code, including out-of-the-box integrations and far more efficient UI builders, without the limitations that usually preclude traditional app platforms from being added to developers' toolchains.
There’s no reason to let self-hosting or DevOps concerns stop you from bringing low-code into your tech stack, especially given that Appsmith is open-source. Self-host Appsmith today and discover the true power of owning your tools!