An open-source Business Intelligence platform built with Qt5, C++ and D3.js
As of 14/07/2024, we have decided to discontinue the open-source version of this project. This decision was made after careful consideration of our resources and long-term goals. We are incredibly grateful for the support and contributions from the community over
the years. While the repository will remain available for historical reference, no further updates or support will be provided. We encourage users to fork the repository if they wish to continue development independently. Thank you for your understanding and
continued interest.
Table of Contents
Grafieks is an open-source, simple Self-Service Business Intelligence tool that allows users to quickly and easily extract meaningful insights from data. With Grafieks, line-of-business professionals can connect to data sources, build data models or write SQL queries, and build reports on their own, with minimal IT support.
File based
- CSV
- JSON
- Microsoft Excel
RDBMS
- Amazon Redshift
- Microsoft Access
- MySql
- PostgresSQL
- Sqlite
- Snowflake
- Micorosft Sql Server
- Teradata
NoSql
- Mongodb
Cloud Storage
- Box
- Dropbox
- Google Drive
Online Services
- Github Gists
- Google Sheets
- Bar Chart
a) Bar Chart
b) Grouped Bar Chart
c) Stacked Bar Chart
d) Horizontal Bar Chart
e) Horizontal Grouped Bar Chart
f) Horizontal Stacked Bar Chart - Line Chart
a) Line Chart
b) Horizontal Line Chart
c) Multiple Line Chart - Area Chart
a) Area Chart
b) Stacked Area Chart - Pie Chart
- Donut Chart
- Radar Chart
- Scatter Plot
- Funnel
- Gauge
- Heat Map
- Sunburst
- Tree Chart
- Waterfall Chart
- Pivot
- Table
Note: Currently, it has been tested to work with Windows 10 and 11 only. On other OS, some of the features may not work.
Core technologies behind the application
- Qt5 - Only open-source modules used.
- C++ 11
- Javascript
- D3js
- DuckDb
This section gives a set of instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
git clone --recurse-submodules https://github.com/Grafieks-Analytics/grafieks-desktop/
git submodule update --init
These commands will add a folder "Charts" at Sources/
folder
Below command will install all required packages and build.
cd Source/Charts
npm install
npm run build
Please choose whichever is applicable. You do not need to install all. e.g, if you need to process Mysql database, please download Mysql driver only.
Links to drivers for various databases to connect as datasource
- Amazon Redshift driver
- Microsoft Access. You need to have Microsoft office installed on your system
- Mongodb
- MySql
- PostgresSQL
- Snowflake
- Micorosft Sql Server
- Teradata
- Microsoft Excel. You need to have Microsoft office installed on your system
For those connectors not mentioned above, no special download is required.
Important step
-
Rename Code/secrets.sample.h to Code/secrets.h and put up your credentials, else online storages section will not work. Remember to remove all the commented section in the body
-
For detailed installation and setup on Windows, Refer this Document
-
Duckdb v0.2.9 dll file is already included with the setup. However, if you manually want to install and setup Duckdb on Windows, Refer this Document.
-
To understanding the QML layout file, Read this Document
Data Connector Screen
Report Designer Screen
Dashboard Designer Screen
- Connect to datasources
- Datasource filters, Report filters & Dashboard filters
- Publish datasources
- Create reports
- Create and publish dashboards
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the GPL v3 License. See LICENSE.txt
for more information.
- Project Link: https://www.grafieks.com/
- Github: https://github.com/Grafieks-Analytics/grafieks-desktop
We would like to thank the following repositories for their contribution to the open-source community