SkyFlare - A Unified Development Framework
Overview
SkyFlare is a PHP/Javascript framework for multi-tenant, API-driven SaaS framework built from the ground up to be secure, performant and expressive. Invented at Think Build Push.
Client | Open Source Community |
---|---|
Team | Greg Strange, Avery Strange |
Metrics | 08/09/2024 Released 28 clones 55% HTML5 34% PHP 10% JavaScript |
01. The Challenge
Modern web development is dominated by frameworks that aim to do everything for everyone in every situation. Generally speaking, the most popular frameworks attempt to solve problems that only FAANG companies need to address. As a result, focused, niche frameworks that handle the core aspects of a SaaS application - especially single database, multi-tenant SaaS - don't really exist.
Think Build Push's clients often don't need to scale to millions of users, build a microservice architecture or handles thousands of concurrent user sessions a minute. In addition, most SaaS companies, especially startups, have small, coordinated teams that communicate often and early and make changes in sometimes non-standard and more atomic ways. We asked ourselves, "With the awesome improvements in native browser APIs, is it possible to create a framework that leverages native technology instead of replacing them? With the amazing improvements in PHP in general, and API designs specifically, is it possible to create a lean purpose, API-based application framework?" SkyFlare is the answer to those questions.
02. The Solution
We decided to create our own framework to rapidly build out working prototypes that could be easily improved and expanded to be production ready. Sky is the backend API-driven backend and Flare is the frontend API consumption coordinator. Sky doesn't require Flare to be expressed. Flare doesn't only work with Sky. By separating concerns, each can stay focused on their primary purpose without requiring coordination in their development. Because the vast majority of all B2B SaaS applications are thin application layers for data relationships, the data relationship should be the center column of a good B2B application. Deciding to use convention over configuration, we started with the database design to determine the application architecture and the interfaces. Coupled with an auto-create endpoint, Sky can build up a basic CRUD application in seconds. Because Flare doesn't attempt to replace native browser APIs but to extend them for the purpose of more easily managing API consumption, Flare can manage API consumption atomically and repeatedly with less memory overhead and a minimum of configuration. Flare configuration is achieved through the use of flare-* attributes which allows for "micro-configurations" and easy tooling for complicated API flows such as remote loading data, template hydration and dom injection.
03. The Result
SkyFlare has already been used in multiple projects with clients and has shown to be a more performant, expressive framework in the narrow context of B2B multi-tenant, SaaS applications. A single developer working with SkyFlare has been able to create and manage 14 applications in under 3 months. Clients have been amazed and pleased with the breadth of the working prototypes created and have been able to quickly approve projects that have 30% lower up front costs.
SkyFlare is a refreshing idea in frameworks that solves a common and ongoing problem in software development. Think Build Push's innovative approach is already showing promise in revolutionizing how SaaS applications are going to be made.
Laurentiu Ciovica
Founder, Omeron Technologies- Application Design
- Architecture
- UI/UX design
- Application Management