Announcing gluestack - Open source framework to build full-stack apps faster.
Tags: opensource, javascript, mobile, webdev
Published: 2022-12-23 11:41:28

The modern application development scene needs a holistic stack. One that lets you focus on real-world problems rather than dealing with engineering roadblocks. Sadly, that has not been the case up till now. To date, the frameworks available do not encourage the journey from idea to deployment fully — there are too many disconnected variables at play. 

For example, say you decide to build an app using Next.js. But as you start building pages, you become unsure of which styling library to choose. There are multiple options — React-based libraries like Headless UI or CSS first options like Tailwind. 

Then comes the question for the backend — do you use managed services or build one on your own? The decision leads you to a confusing maze where you must solve one engineering problem after another. 

But by the time you get out, your idea will most likely be obsolete or have competition in the market. Maybe a FAANG company has already launched the app. 

Going from idea to deployment needs to be faster. Solving real-world problems needs to be the focus, not firefighting engineering challenges. 

That is why we created [gluestack]( https://gluestack.io/?utm_source=dev.to&utm_medium=referral&utm_id=announcement_blog).

## What is gluestack

gluestack is a 100% open-source full-stack framework. It is designed to simplify the process of both web and mobile application development. 

Everything is set up as swappable modules and works on a microservices architecture. A CLI allows you to initialize projects, run the dev environment and deploy full-stack apps. You also get options for database modeling and migrations, queuing workers for background jobs, integrating with third-party services for messaging, etc.

## Core beliefs behind gluestack

We wanted to balance standardization and flexibility while building gluestack. This led to two main parts making up the framework.


![gluestack architecture](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z4882kirhe4nqo6dn4g5.png)

### 1. The platform-independent core

The language-independent core allows multiple modules to be glued together. It provides the foundation to initialize a gluestack project and the environment to use and build plugins. We use NPM as the package manager for initializing projects and plugins. Dockers is used for providing the dev environment and booting the dependent services.

<aside>
⭐ Key concepts:

- Architecture first, **l**anguage independent
- Bring what you want
- Loosely coupled
</aside>

### 2. The opinions

On top of the core framework, we’ve added our opinions that come from the experience of running an app development agency and building hundreds of apps.

 Any tech that becomes a part of gluestack will serve a purpose in the bigger picture. For example, we won't add state libraries (like zustand or redux), but we will add something like NextAuth.js and integrate Hasura and GraphQL for you.

The plugin architecture lets you choose from a set of available frontend and backend plugins. The plugins are added in way that it provides a solution for most, but not for all. This means no more building components or plugins from scratch. 

What if the recommended plugins don’t solve your problem? You can also create custom plugins and install them easily. We believe that any additions to the create-gluestack-app project should solve a specific issue within the core technologies.

## Our recommended plugins


![Recommended plugins](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kyh5pdtlfqbbfih28iqb.png)




## The gluestack ecosystem

- **seal** - *deploy with ease, scale with confidence.*
    
    With seal, you can deploy your entire gluestack application, from the user interface to the servers and databases, effortlessly. 
    
- **DSX (coming soon)**
    
    You can build your design system to ship multiple products faster with better collaboration, consistency, and standardization. 
    

## Going forward…

Our goal is to make gluestack the one-stop solution for everything application development. Our team is working hard to make this target a reality. 

Currently, the mobile app module uses React Native and the UI components are shared between Web and Mobile with `@gluestack/ui`. For mobile apps, we consider Flutter as an option for future versions. We have Smart Contracts, Native platforms, etc., under consideration.

The waitlist for developer preview is now open. 

If you are interested in trying out gluestack, [sign-up for early access]( https://gluestack.io/?utm_source=dev.to&utm_medium=referral&utm_id=announcement_blog) today.

We'd love to know what you think.