Open source and devs are an open love affair that closed source doesn’t like. For those of you who don’t like declarations like that, ↓ is a set of metrics from Boston Consulting Group that should start warming you up.
Stats irrespective, if you write code for web dev, you are wondering about the latest and greatest in open source in 2023. So, wonder no more and dive right into the ten tools you should pitch to your boss.
☝🏻 Factors in consideration when I came up with this list,
- Popularity
- Community contributions
- Support cadence
- Speed of releases
- New feature development
- Security
Novu
https://novu.co
📢 In Novu’s words, “Novu is the open-source notification infrastructure for products. Add a notification center for your React, Vue, and Angular apps 🚀
🔎 How they do on five for this list
- ~16K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 3/5
- Speed of Release: 3/5
- Support cadence: 5/5
Developing a notification layer is a common task when designing a new application. It typically starts with sending a simple email, but you may manage hundreds of notifications across multiple channels as the application grows. This can be a time-consuming and complex process. That’s where Novu comes in. Novu is an infrastructure development platform that helps developers build and deploy cloud-native applications. Its goal is to make it easier for developers to create meaningful, transactional communication between their product and its users.
Pros
- Easy to set up and integrate
- Single API for all messaging providers (Email, SMS, Push, Chat)
Cons
- No ORM-based configuration
- No pricing plans on cloud-managed service
Novu offers an easy-to-use API and a focus on developer experience. This means that developers can easily integrate notifications into their applications without worrying about the underlying infrastructure.
With Novu, you can,
- Connect different Providers: Use a built-in collection of popular providers — Sendgrid, Mailgun, Twilio, and many more. Add the API key, and you’re ready to go.
- Set Multiple Notification Channels: Novu supports many notifications, including email, SMS, push notifications, and more. This means you can reach your users through their preferred channels and ensure that your messages are delivered.
- Use Dynamic Templates: Select channels, add content with {{dynamic}} syntax, and custom rules to control the delivery of notifications.
- Track Feed: Novu provides a notification activity feed that monitors every outgoing message associated with its relevant metadata.
Closed source alternative
Appsmith
📢 In Appsmith’s words, “Low code project to build admin panels, internal tools, and dashboards. Integrates with 20+ databases and any API.”
🔎 How they do on five for this list
- ~24.7K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 4/5
- Speed of Release: 5/5
- Support cadence: 5/5
Appsmith is a low-code platform that allows developers to create software applications without writing extensive code. It provides a visual interface for building and connecting various components, such as forms, buttons, and data sources. This allows developers to prototype and builds functional applications with minimal effort rapidly.
Pros
- Several pre-built widgets to build any internal tool interface in just minutes.
- Enterprise features — Advanced VCS, Audit Logs, Custom Branding, SSO.
- Several self-hosted deployment options.
Cons
- Responsive UI for mobile devices (Coming soon on their Roadmap)
With Appsmith, you get,
- Pre-built Widgets: Appsmith comes with a library of prebuilt widgets that you can use to build your application. These widgets include buttons, tables, forms, and charts with advanced properties like pagination, in-line editing, and events.
- Native integrations: Appsmith makes it easy to connect to your preferred databases and tools with over 20+ native integrations. These include popular options like Postgres, MongoDB, and Airtable, as well as the ability to connect to almost every API using the RESTful API or GraphQL plugin.
- JavaScript code support. You can use JavaScript inside
{{ }}
anywhere in Appsmith. You can reference every entity in Appsmith as a JavaScript variable and perform all JavaScript functions and operations on them. - Version control with Git: This feature on Appsmith allows multiple developers to add their work in a git branch, raise a pull request for code reviews, integrate with CI/CD pipelines, and provide a commit history to go back to a previous version if something were to go wrong.
Closed source alternative
Supabase
📢 In Supabase words, “Supabase is an open-source Firebase alternative. Start your project with a Postgres database, Authentication, instant APIs, Edge Functions, Realtime subscriptions, and Storage.”
🔎 How they do on five for this list
- ~44K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 4/5
- Speed of Release: 5/5
- Support cadence: 4/5
In recent times, the competition between databases has evolved. After three decades of growth and improvement, Postgres has gained a reputation for dependability and high performance, making it a popular choice among businesses of all sizes. Oracle has compromised the open-source nature of MySQL, and with the increasing popularity of cloud storage, Postgres has become a leading open-source database option. The rise of Supabase, a Postgres-based alternative to Google’s Firebase, reflects the trend of open-source options challenging proprietary ones.
Pros
- Full Postgres database with Instant REST
- It comes with email/social authentication
Cons
- Its SDK only works with JS (Support for other languages is still in beta)
- Security policies are limited in Real-time
With Supabase, you can,
- Set Database: The heart of most applications is storing data and providing users with fast, easy access. To achieve this, Supabase relies on PostgreSQL, an open-source, relational database. This tech enables Supabase to deliver a seamless experience storing, retrieving, and managing data within your applications.
- Configure Auth: Supabase makes integrating all major social apps easy, giving you various options for authenticating your application’s users. But if you prefer a more traditional approach, Supabase also supports email-password authentication.
- Write Edge Functions: Sometimes, you need to perform certain tasks asynchronously or run operations on the backend of your application. Supabase offers edge functions to handle these types of use cases. Deploying edge functions is easy, and Supabase distributes them globally to ensure that all users have a consistent, fast experience.
- Set-up Storage: As an administrator, the Supabase platform allows you to manage files from your browser easily. You can search, upload, view, and delete files with a few clicks. Supabase storage integrates seamlessly with PostgreSQL and provides a simple JavaScript API for you to use.
Closed source alternative
Supertokens
📢 In Supertokens words, “Open source alternative to Auth0 / Firebase Auth / AWS Cognito”
🔎 How they do on five for this list
- ~8K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 4/5
- Speed of Release: 3/5
- Support cadence: 4/5
Supertokens is an open-source authentication platform that provides secure and scalable solutions for managing user authentication and authorization in web and mobile applications. One of the main benefits of using a library like supertokens for authentication is that it can save developers significant time and effort. Instead of writing the entire authentication system from scratch, developers can use the pre-existing and thoroughly tested code provided by supertokens. This can reduce the potential for errors and security vulnerabilities in the authentication process. Additionally, the open-source nature of supertokens means that developers have access to the source code, which allows them to customize and extend the library as needed to fit the specific needs of their project.
Pros
- Modular architecture makes the setup simple.
- It provides an override feature that enables you to customize authentication fully and flows on both your front end and back end.
Cons
- No not support many popular languages like
Java
andPhp
, and they do not have pre-built UI for popular frontend frameworks likeAngular
andVue
. - Lacks enterprise features like SCIM provisioning, admin, and organization support.
In addition to its core authentication features, SuperTokens also offers a comprehensive, end-to-end solution for managing user sessions. With this solution, it’s easy to implement advanced features like synchronizing session data across multiple devices or limiting the number of devices a user can log in to. These capabilities can help you build more secure and functional applications, and SuperTokens makes it easy to implement them.
SuperTokens comes with,
- Fully customizable UI for Auth: Supertokens comes with pre-built UI components when integrated, making it easy to implement authentication in your application. And the best part is that these UI components are fully customizable, so you can tailor them to match the look and feel of your application.
- Session Management: It provides a robust session management system that allows you to easily create, verify, refresh, and revoke user sessions with a high level of security.
- Role Management: Supertokens also includes a role management system that enables you to easily assign users to specific roles and control what actions they are allowed to perform within your application. This is accomplished by giving roles to sessions, so you can fine-tune different users’ access levels.
Closed source alternative
Appwrite
📢 In Appwrite’s words, “A complete backend solution for your [Flutter / Vue / Angular / React / iOS / Android / ANY OTHER] app”
🔎 How they do on five for this list
- ~28K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 3.5/5
- Speed of Release: 3/5
- Support cadence: 4/5
Appwrite is a popular open-source Backend-as-a-Service (BaaS) platform that provides various tools and features for building modern, feature-rich applications. It is an excellent solution for developers looking for a BaaS platform that is open-source and highly customizable. With Appwrite, you can easily set up a backend for your application and take advantage of features like real-time databases, file storage, serverless functions, and more.
Pros
- Better documentation for self-hosting instances.
- Easy to get started.
Cons
- • No managed option so it’s not fully serverless, but still a better option than building your own backend from scratch if you have legal requirements to host the BaaS yourself.
- You have to handle web server security
With Appwrite, you can,
- Set-up Auth: Appwrite provides a complete user management system that allows developers to easily add authentication and authorization to their applications.
- Manage Data Storage: Appwrite offers a flexible and scalable solution that allows developers to easily store, retrieve, and query data.
- Write Functions: Appwrite provides a function’s runtime that allows developers to create custom backend logic and integrations without maintaining servers.
- Configure webhooks: You can receive an SMS notification when a new user registers for your app. You can also use webhooks to trigger actions such as purging the cache when one of your app’s documents is updated.
Closed source alternative
Astro
📢 In Astro’s own words, “Astro is a website builder tool for the modern web — powerful developer experience meets lightweight output.”
🔎 How they do on five for this list
- ~24K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 4/5
- Speed of Release: 3/5
- Support cadence: 4/5
Astro is a new framework for building websites that allows you to use a JavaScript framework that outputs zero-JavaScript static site. By default, Astro delivers no JavaScript to the client and renders components into HTML. This helps to speed up the website’s performance, as more JavaScript can lead to slower loading times. If you do need to use JavaScript on your website, Astro offers the option to use partial hydration through client directives. These directives allow you to specify when and how a component should be hydrated or have JavaScript added to it.
Pros
- The Pattern provides all of the benefits of component-based architecture, such as reusability and maintainability.
- Websites are SEO-friendly because all static content is rendered on the server.
Cons
- There is not a lot of debate on the subject (Astro’s Island architecture).
- A lot of frameworks claim to support the pattern, which makes it difficult to choose between them.
One of the great things about Astro is that it supports popular component libraries like React/Preact (JSX), Svelte, Vue, and web components, making it easy for developers who are already familiar with these tools to get up and running quickly.
Astro pitches itself as,
- Content-focused: Astro was designed for building content-rich websites. This includes most marketing sites, publishing sites, documentation sites, blogs, portfolios, and some eCommerce sites.
- Server-first: Astro leverages server-side rendering over client-side rendering as much as possible. This is the same approach traditional server-side frameworks — PHP, Ruby on Rails, etc. — have been using for decades. But you don’t need to learn a second server-side language to unlock it.
- Fully flexible: Astro is an all-in-one web framework with everything you need to build a website. Astro includes a component syntax, file-based routing, asset handling, a build process, bundling, optimizations, data fetching, and more.
Nhost
📢 In Nhost own words, “The Open Source Firebase Alternative with GraphQL.”
🔎 How they do on five for this list
- ~24K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 4/5
- Speed of Release: 3/5
- Support cadence: 4/5
In recent years, GraphQL has gained significant hype as an alternative to REST APIs. GraphQL is a query language that allows clients to request specifically shaped data from a server, leading to more efficient and flexible communication between client and server.
Nhost is a cloud-based backend platform that utilizes GraphQL to enable developers to build and deploy serverless applications faster. Nhost provides a range of features that make it easy to build scalable and feature-rich applications, including user management, data storage, serverless functions, real-time communication, and more.
Pros
- Provides instant Realtime GraphQL API based on your tables and columns in the database.
- Supports serverless functions.
Cons
- Real-time options are limited.
One of the key benefits of using Nhost is that it allows developers to take advantage of GraphQL without worrying about the complexities of setting up and maintaining their own GraphQL server.
With Nhost, you can set up,
- Auth: Nhost provides a complete user management system that easily adds authentication and authorization to your application. This includes support for popular authentication methods such as email/password, social login, and more.
- Serverless Functions: Nhost enables you to create custom backend logic and integrations without the need to maintain servers. This makes it easy to add custom functionality to your application and scale it as needed.
- Real-Time GraphQL API: Nhost includes a real-time communication engine that allows you to manage subscriptions to sync data in real-time.
Closed source alternative
Hoppscotch
📢 In Hoppscotch own words, “Hoppscotch is light-weight, web based API development suite. It was built from the ground up with ease of use and accessibility in mind providing all the functionality needed for API developers with minimalist, unobtrusive UI. It is free-to-use and as an added perk completely Open Source!”
🔎 How they do on five for this list
- ~49K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 4/5
- Speed of Release: 3/5
- Support cadence: 4/5
Hoppscotch is an open-source API testing tool that helps developers test and debugs their APIs quickly and easily. It is a lightweight tool that can be used to send HTTP requests and analyze the responses from the API.
Pros
- Lightweight and fast.
- Documentation generator.
- Support for WebSocket also allows SSE, Socket.IO and MQTT
Cons
- Little documentation
- Missing features for test automation
- Need to add some features by CLI.
One of the critical features of Hoppscotch is its simplicity. It has a straightforward and intuitive interface that makes it easy for developers to get started with API testing. It also includes various features that make it easy to customize and automate API tests, including support for variables, environment management, and more.
Hopscotch comes with,
- REST and GraphQL Support: Hoppscotch supports both REST and GraphQL APIs, making it a versatile tool that can be used to test APIs built using a wide range of technologies.
- Realtime Platform: Hoppscotch includes a real-time platform that allows developers to test and debug their socket or channel connections. This makes it easy to identify and fix issues as they arise.
- API Documentation: Hoppscotch allows developers to create comprehensive API documentation quickly and easily. This can be especially useful for helping other developers understand and use your API.
- PWA Support: Hoppscotch includes support for Progressive Web Apps (PWAs), making it easy for developers to test and debug the APIs used by their PWAs.
Closed source alternative
NocoDB
📢 In NocoDB own words, “Turns any MySQL, PostgreSQL, SQL Server, SQLite & MariaDB into a smart-spreadsheet.”
🔎 How they do on five for this list
- ~33K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 5/5
- Speed of Release: 5/5
- Support cadence: 4/5
NocoDB is an open-source project that provides a web-based platform for building and managing online databases. It is designed to be easy and flexible, allowing users to create custom databases and workflows to meet their specific needs.
Pros
- Assign and track tasks, third-party integration available
- Turn your SQL database into a smart spreadsheet
Cons
- No cloud version (open in private beta)
One of the key features of NocoDB is its customizable data model. Users can create custom database tables and define the fields and relationships between them. This allows users to model their data in a way that makes sense for their specific use case.
With NocoDB, you can
- Set-up rich spreadsheet interface: Comes with several operations that allow for the configuration of a full spreadsheet feature, including CRUD operations, view permission types, and the ability to share bases and views.
- Set-up Automations: NocoDB includes support for automations, which allows you to automate repetitive tasks and workflows. This can help you save time and improve efficiency when working with your data.
- Configure Headless API: NocoDB includes a headless API that allows you to programmatically access and manipulates your data. This can be especially useful for developers who want to build custom integrations or applications that work with NocoDB.
Closed source alternative
Strapi
📢 In Strapi own words, “The most advanced open-source headless CMS to build powerful APIs with no effort.”
🔎 How they do on five for this list
- ~51K GitHub ⭐
- Values for community contributions: 4/5
- Values for new feature development: 5/5
- Speed of Release: 5/5
- Support cadence: 4/5
Strapi is an open-source content management system (CMS) that allows developers to build and manage APIs for content-rich applications. It is designed to be easy and flexible, allowing developers to quickly build and deploy APIs for their applications.
Pros
- Rapid and scalable
- Built-In authentication system
- Multiple workflows for automations
Cons
- Difficult to migrate existing APIs
- TypeScript support Is limited
One of the key features of Strapi is its plugin-based architecture. Strapi includes a range of plugins that allow developers to easily add functionality to their APIs, such as support for file uploads, email sending, and more. These plugins can be easily installed and configured, making it easy to customize the functionality of your API.
In addition to its plugin architecture, Strapi also includes a user-friendly admin panel that allows developers and content editors to manage their content easily. This includes support for creating and managing content types and previewing and publishing content.
With Strapi, you get,
- GraphQL or RESTful: Strapi allows developers to choose using GraphQL or RESTful APIs, depending on their needs. This makes it a flexible platform that can be used to build APIs for various applications.
- Webhooks: Strapi includes webhooks support, allowing developers to trigger custom events and actions based on certain conditions. This can be especially useful for building integrations and automating workflows.
- Authentication & Permissions: Strapi includes a user management system that allows developers to easily add authentication and authorization to their APIs. This includes support for popular authentication methods such as email/password, social login, and more.
- Internationalization: Strapi includes support for internationalization, which allows developers to build APIs that support multiple languages easily. This can be especially useful for building applications that cater to a global audience.
Closed source alternative
Thanks for reading this one! I would love to hear your thoughts and your list of open-source projects.