Skip to content

pluralsh/bytebase

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔥 Live Demo⚙️ Install📚 Documentation🙋‍♀️ Get Instant Help

go report Artifact Hub Github Stars

Different database development tasks

Multiple database systems

Unified process

Single tool



🪜

Change

Want to formalize the database change process but don't know how?

Standard Operating Procedure (SOP)
Standardize the database schema and data change process across different database systems, small or large tables and different tenants.

SQL Review
100+ lint rules to detect SQL anti-patterns and enforce consistent SQL style in the organization.

GitOps
Point-and-click GitHub and GitLab integration to enable GitOps workflow for changing database.

🔮

Query

Want to control the data access but don't know how?

All-in-one SQL Editor
Web-based IDE specifically for performing SQL specific tasks.

Data Anonymization
State-of-the-art column level anonymization engine to cover complex situations like subquery, CTE.

Database Access Control
Organization level policy to centralize the database access control.

👩‍💼

Admin

Want to enforce organization policy and monitor database activity but don't know how?

Manage Database Resources
A single place to manage environments, database instances, database users for application development, with optional Terraform integration.

Policy Enforcement
Enforce organization wide SQL Review policy, backup policy and data access policy.

SQL Editor Admin mode
CLI like experience without setting up bastion.

🔒

Secure

Want to avoid data leakage, change outage and detect malicious behavior but don't know how?

Centralize Change, Query and Admin Tasks
A single place to perform different tasks on different databases, thus enforce policy and monitor activity accordingly.

RBAC
Two-level RBAC model mapping to the organization wide privileges and application team privileges respectively.

Anomaly Center and Audit Logging
Capture all database anomalies, user actions and system events and present them in a holistic view.

🖖 Intro

Bytebase is a Database CI/CD solution for the Developers and DBAs. It's the only database CI/CD project included by the CNCF Landscape. The Bytebase family consists of these tools:

  • Bytebase Console: A web-based GUI for developers and DBAs to manage the database development lifecycle.
  • Bytebase CLI (bb): The CLI to help developers integrate database changes into the existing CI/CD workflow.
  • Bytebase GitHub App and SQL Review GitHub Action: The GitHub App and GitHub Action to detect SQL anti-patterns and enforce a consistent SQL style guide during Pull Request.
  • Terraform Bytebase Provider: The Terraform provider enables team to manage Bytebase resources via Terraform. A typical setup involves teams using Terraform to provision database instances from Cloud vendors, followed by using Bytebase provider to prepare those instances ready for application use.
Topic
🏗️ Installation
🎮 Demo
👩‍🏫 Tutorials
💎 Design Principles
🧩 Data Model
🎭 Roles
🕊 Developing and Contributing
🤺 Bytebase vs Alternatives

🏗️ Installation

One liner

# One-liner installation script from latest release
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/bytebase/install/main/install.sh)"

🎮 Demo

Live demo at https://demo.bytebase.com

You can also book a 30min product walkthrough with one of our product experts.


👩‍🏫 Tutorials

Manage database from cloud database vendors


💎 Design Principles

🪶 Dependency Free Start with a single command ./bytebase without any external dependency. External PostgreSQL data store and others are optional.
🔗 Integration First Solely focus on database management and leave the rest to others. We have native VCS integration with GitHub/GitLab, Terraform Provider, webhook, and etc.
💂‍♀️ Engineering Disciplined Disciplined bi-weekly release and engineering practice.

🧩 Data Model

More details in Data Model Doc.

Data Model


🎭 Roles

More details in Roles and Permissions Doc.

Bytebase employs RBAC (Role-Based-Access-Control) and provides two role sets at the workspace and project level:

  • Workspace roles: Owner, DBA, Developer. The workspace role maps to the role in an engineering organization.
  • Project roles: Owner, Developer. The project level role maps to the role in a specific team or project.

Every user is assigned a workspace role, and if a particular user is involved in a particular project, then she will also be assigned a project role accordingly.

Below diagram describes a typical mapping between an engineering org and the corresponding roles in the Bytebase workspace

Role Mapping


🕊 Developing and Contributing

Tech Stack

  • Bytebase is built with a curated tech stack. It is optimized for developer experience and is very easy to start working on the code:

    1. It has no external dependency.
    2. It requires zero config.
    3. 1 command to start backend and 1 command to start frontend, both with live reload support.
  • Interactive code walkthrough

  • Follow Life of a Feature.

Dev Environemnt Setup

Prerequisites