Skip to content

Open-source web platform for creating charts out of different data sources (databases and APIs)

License

Notifications You must be signed in to change notification settings

Kiura/chartbrew

 
 

Repository files navigation

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 dashboard


📚 Read the full docs here

🔧 Development roadmap - start here if you want to contribute

🚙 Public feature roadmap over here

💬 Join our Slack workspace

🤟 Join our Discord

Data sources

Currently, ChartBrew supports connections to these data sources.

  • MySQL
  • PostgreSQL
  • MongoDB
  • APIs that support JSON data

Prerequisites

  • NodeJS v12 (should also work with v10)
  • NPM
  • MySQL v5+ Server running and an empty database to use for Chartbrew

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

Quickstart

If you already have a MySQL server running, create a database called charbrew and adjust the parameters below with your connection settings. The command will then setup everything for you.

Important Windows command line is not supported at the moment. Use something like Cygwin on Windows.

npx create-chartbrew-app myApp --dbname="chartbrew" --dbusername="root" --dbpassword="" --dbhost="localhost"

The arguments are optional, but they set the environmental variables needed for the project to run. Check out which need to be set here.

Run the database migrations

If the database parameters are correct, the migrations should run automatically. If the new database wasn't populated with tables, ensure all the environmental variables are set, then run the following command in the server folder:

cd server
npm run db:migrate

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

Run with Docker

Check the full guide in the docs.

Quickstart

Run the following commands and configure the variables:

docker pull razvanilin/chartbrew
docker run -p 3210:3210 -p 3000:3000 \
  -e CB_SECRET=<enter_a_secure_string> \
  -e CB_API_HOST=0.0.0.0 \
  -e CB_DB_HOST=host.docker.internal \
  -e CB_DB_NAME=chartbrew \
  -e CB_DB_USERNAME=root \
  -e CB_DB_PASSWORD=password \
  -e REACT_APP_CLIENT_HOST=http://localhost:3000 \
  -e REACT_APP_API_HOST=http://localhost:3210 \
  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 for creating charts out of different data sources (databases and APIs)

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 99.1%
  • Other 0.9%