Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Preacto/chartbrew

Open more actions menu
ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2,470 Commits
2,470 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

ChartBrew logo

ChartBrew build

Chartbrew is an open-source web application that can connect directly to databases and APIs and use the data to create beautiful charts. It features a chart builder, editable dashboards, embedable charts, query & requests editor, and team capabilities.

Chartbrew as a service is available here


ChartBrew dashboard


๐Ÿ“š Read the full docs here

๐Ÿ’ก Have any ideas or discussion topics?

๐Ÿ’ฌ Join our Discord

Data sources

Check Chartbrew's website for the latest list of supported data sources

Prerequisites

  • NodeJS v20
  • MySQL (5+) or PostgreSQL (12.5+)
  • Redis (v6+)

Start

It is recommended you head over to the more detailed documentation to find out how to set up Chartbrew

๐Ÿ“š You can find it here

Set up Chartbrew locally

Create a new database

Chartbrew can run on MySQL or PostgreSQL. Create an empty database that Chartbrew can use.

Clone and setup

git clone https://github.com/chartbrew/chartbrew.git
cd chartbrew && npm run setup

Complete the required environmental variables in chartbrew/.env. Check out which need to be set here.

Run the project in Development

Open two terminals, one for front-end and the other for back-end.

# frontend
cd client/
npm run start

# backend
cd server/
npm run start-dev

Head over to http://localhost:4018 to see the app running and create your first user account.

Deploy Chartbrew on Render

Deploy to Render

Deploy Chartbrew on Heroku and Vercel

Read more on how to do this here

Run with Docker

Check the full guide in the docs.

Quickstart

A Chartbrew docker image is built whenever a new version is released.

Before running the commands below, make sure you have a MySQL server already running and an empty database that Chartbrew can use. The database name should match the value of the CB_DB_NAME variable.

You will need a 32 bytes AES encryption key for the CB_ENCRYPTION_KEY variable. Run the following command to generate one:

node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
docker pull razvanilin/chartbrew

docker run -p 4019:4019 -p 4018:4018 \
  -e CB_ENCRYPTION_KEY=your_32_bytes_key \
  -e CB_API_HOST=0.0.0.0 \
  -e CB_API_PORT=4019 \
  -e CB_DB_HOST=host.docker.internal \
  -e CB_DB_PORT=3306 \
  -e CB_DB_NAME=chartbrew \
  -e CB_DB_USERNAME=root \
  -e CB_DB_PASSWORD=password \
  -e CB_REDIS_HOST=host.docker.internal \
  -e CB_REDIS_PORT=6379 \
  -e CB_REDIS_PASSWORD=password \
  -e VITE_APP_CLIENT_HOST=http://localhost:4018 \
  -e VITE_APP_CLIENT_PORT=4018 \
  -e VITE_APP_API_HOST=http://localhost:4019 \
  razvanilin/chartbrew

Acknowledgements

Many thanks to everybody that contributed to this open-source project ๐Ÿ™

Start here if you want to become a contributor

About

Open-source web platform used to create live reporting dashboards from APIs, MongoDB, Firestore, MySQL, PostgreSQL, and more ๐Ÿ“ˆ๐Ÿ“Š

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 98.9%
  • EJS 0.8%
  • CSS 0.2%
  • HTML 0.1%
  • Shell 0.0%
  • Dockerfile 0.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.