Insights is a 100% open-source BI tool designed to make data analysis and reporting more accessible to technical as well as non-technical users.
Building custom apps or creating structured data has been very easy with Frappe Framework. However, extracting information from these apps was not a very good experience. Users needed to know how to write SQL queries to create reports to gain valuable information from the data. So I wanted to improve the experience of building these reports and dashboards for everyone in our team.
-
Connect Multiple Sources: You can integrate data from multiple databases, files and spreadsheets. Getting all your data into one place helps you analyse interconnected data.
-
Query Builder: Frappe Insights a user-friendly query builder interface that allows users to create queries without any SQL knowledge. The interface provides a step-by-step approach for building queries, empowering users to easily select tables, add joins, apply filters, perform calculations, and more.
-
Visualizations and Dashboards: You can visualize the query results using a variety of charts and graphs. Frappe Insights also suggests the best chart for a given result set. You can create dashboards using a drag-and-drop interface and add filters on the dashboard to apply to the charts.
-
Database Support: Frappe Insights currently supports MySQL, PostgreSQL, DuckDB, and BigQuery databases. More database integrations are planned for the future.
-
Frappe Framework: A full-stack web application framework written in Python and Javascript. The framework provides a robust foundation for building web applications, including a database abstraction layer, user authentication, and a REST API.
-
Frappe UI: A Vue-based UI library, to provide a modern user interface. The Frappe UI library provides a variety of components that can be used to build single-page applications on top of the Frappe Framework.
-
Ibis: A Python library to interact with SQL databases using a high-level API. Ibis provides a unified interface to interact with 20+ databases, allowing Frappe Insights to support multiple database backends.
-
eCharts: A powerful charting library, to render charts and graphs. eCharts provides a variety of chart types and customization options, allowing Frappe Insights to provide a rich and interactive data visualization experience.
You can try Frappe Cloud, a simple, user-friendly and sophisticated open-source platform to host Frappe applications with peace of mind.
It takes care of installation, setup, upgrades, monitoring, maintenance and support of your Frappe deployments. It is a fully featured developer platform with an ability to manage and control multiple Frappe deployments.
Follow these steps to set up Frappe Insights in production:
Step 1: Download the easy install script
wget https://frappe.io/easy-install.pyStep 2: Run the deployment command
python3 ./easy-install.py deploy \
--project=insights_prod_setup \
--email=your_email.example.com \
--image=ghcr.io/frappe/insights \
--version=stable \
--app=insights \
--sitename subdomain.domain.tldReplace the following parameters with your values:
your_email.example.com: Your email addresssubdomain.domain.tld: Your domain name where Insights will be hosted
The script will set up a production-ready instance of Frappe Insights with all the necessary configurations in about 5 minutes.
You need Docker, docker-compose and git setup on your machine. Refer Docker documentation. After that, follow below steps:
Step 1: Setup folder and download the required files
mkdir frappe-insights
cd frappe-insights
# Download the docker-compose file
wget -O docker-compose.yml https://raw.githubusercontent.com/frappe/insights/develop/docker/docker-compose.yml
# Download the setup script
wget -O init.sh https://raw.githubusercontent.com/frappe/insights/develop/docker/init.sh
Step 2: Run the container and daemonize it
docker compose up -d
Step 3: The site http://insights.localhost:8000/insights should now be available. The default credentials are:
- Username: Administrator
- Password: admin
To setup the repository locally follow the steps mentioned below:
-
Setup bench by following the Installation Steps and start the server
bench start -
In a separate terminal window, run the following commands:
# Create a new site bench new-site insights.test # Map your site to localhost bench --site insights.test add-to-hosts -
Get the Insights app and install it
# Get the Insights app bench get-app https://github.com/frappe/insights # Install the app bench --site insights.test install-app insights -
Open the URL
http://insights.test:8000/insightsin your browser, you should see the app running
The Insights frontend is a Vue.js application located in the frontend/src2 directory. Follow these steps to set up the frontend development environment:
-
Navigate to the Insights app directory:
cd apps/insights -
Install dependencies:
yarn install
-
Add the following line in your site's
site_config.jsonfile"ignore_csrf": 1
-
Start the development server:
yarn dev
-
Access the development site:
- Open
http://insights.localhost:8080/insightsin your browser - Any changes to files in
frontend/src2will automatically reload in the browser
- Open



