Tree-Ware Introduction

Accelerate your software development!

The Problem

Companies struggle with feature velocity
They use a lot of open-source software to speed up their development
But that alone is NOT sufficient!
Every feature requires a lot of cross-cutting aspects to be implemented
UI for user-input and feature-metrics
APIs for user input and feature metrics
RBAC for the APIs
Caching
Storage for user input and feature metrics
Full-text search
Rolling up of feature metrics across space & time
And a lot more such cross-cutting aspects
There is open-source software for each of the above, but they need to be glued together for each feature
New features require glue-logic for cross-cutting aspects
New cross-cutting aspects require updates in existing features

The initial rush-to-market results in

many of the cross-cutting aspects being left out

and inconsistently implemented features

Inconsistent feature implementations make it hard to add new cross-cutting aspects

The Solution

tree-ware

An end-to-end declarative open-source framework

End-to-end

UIs, APIs, load-balancers, caches, databases, compute-pipelines, devices

Declarative

System-wide schema specified by developers

Open-source

https://github.com/tree-ware

Tree-ware lets you rush-to-market

with a slew of cross-cutting aspects included out of the box

and consistently implemented features

New features automatically get cross-cutting aspects from tree-ware
New cross-cutting aspects do NOT require updates in existing features

Work Involved?

Developers only define the following:

  1. a schema for the product/service data
  2. custom business-logic
Tree-ware takes care of everything else

How Does it Work?

Tree-ware uses a data-first approach
Developers define the data corresponding to the features
And tree-ware provides the cross-cutting aspects

It sets up & operates infrastructure

for

the data defined in the schema

It provides the glue-logic for the necessary infrastructure

It uses existing infrastructure:

Databases, queues, compute-pipelines, etc.

And provides other custom infrastructure:

UI, load-balancer, API server, cache, RBAC, feature-flags, etc.

Common Concerns

Tree-ware has solved common concerns people have with such frameworks
What if I want to do something the framework does not support?

Tree-ware does not limit what can be done

It is modular and custom code can be inserted wherever needed

How do I prevent the framework from overwriting my manually written code?
Tree-ware generated code and manually written code do not exist in the same files
Can it scale?
Tree-ware was built from the ground up for scale

What's the Catch?

It is less than ideal for existing systems

But it is perfect for brand new systems

It is not fully implemented

But there is enough for a first release

And it is a great foundation to build on

Recap

Tree-ware accelerates feature development by taking care of all cross-cutting aspects

Developers only define the following:

  1. a schema for the product/service data
  2. custom business-logic
New cross-cutting aspects can be added WITHOUT modifying existing features

The End