Skip to content

Metadata driven, DDL-free, scalable RESTful cloud database server!

License

Notifications You must be signed in to change notification settings

funkygao/flexdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e3e2fdb · May 30, 2023

History

6 Commits
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023
May 30, 2023

Repository files navigation

Requirement

Table of content

Table of content

Why

A “dual-track” approach is essential to digital transformation, pairing traditional, IT-led grand scale transformation with a new form of business-led “rapid cycle innovation”.

Mission

Enable citizen development.

How

Metadata driven architecture and REPL alike runtime engine.

In the past, we describe our business with code; with FlexDB, we describe our business with metadata and FlexDB translates metadata into runtime on the fly.

Requirement ------------->  code  -> Business
          |
          V
Requirement -> metadata -> [code] -> Business

Getting Started

Try it out first (requires docker...)

docker run -d --name flexsql -e MYSQL_DATABASE=easyapp -e MYSQL_ALLOW_EMPTY_PASSWORD=1 mysql:5.7
docker run -it --user 10001 -p 10001:8000 dddplus/flexdb:latest

Building from Source

go install github.com/jteeuwen/go-bindata/go-bindata

go get github.com/agile-app/flexdb
cd $GOPATH/src/github.com/agile-app/flexdb
go env -w GOPRIVATE=*.gitlab.com,*.gitee.com
make build

Abstraction

Org(unit of tenant)
 ├── Quota 
 ├── Authz
 ├── API
 │    ├── Metadata API
 │    │     └── odata
 │    ├── Data API
 │    │     └── odata
 └── App
      ├── Model
      │   ├── Column
      │   │    └── Plugin (ColumnKind)
      │   │         ├── Validation
      │   │         ├── Indexer
      │   │         ├── Formula
      │   │         ├── CellValueGenerator
      │   │         └── View related
      │   ├── Feature
      │   ├── Trigger (context)
      │   │    ├── BeforeInsert(action)
      │   │    └── AfterInsert(action)
      │   └── Data
      │        ├── Row
      │        ├── Clob
      │        └── Index
      │             ├── StringIndex
      │             ├── NumberIndex
      │             ├── SpatialIndex
      │             └── TimeIndex
      ├── UI
      │   ├── Chart
      │   └── Page
      │        └── View
      ├── Share
      ├── Workflow
      ├── Connector
      ├── Automation
      └── Addons
          ├── Metrics
          └── Logs

Inspired By

Salesforce, Odoo

About

Metadata driven, DDL-free, scalable RESTful cloud database server!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages