Skip to content

About

A no-code AI data analyst for CSV and Excel files that profiles datasets, finds patterns and anomalies, answers natural-language questions and generates charts and PDF reports.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

18 Commits

Folders and files

Repository files navigation

InsightFlow

Explore

AI-Powered Data Analyst

InsightFlow turns raw CSV and Excel files into clear, actionable analysis without requiring code.

Upload a dataset and InsightFlow automatically profiles the data, detects patterns, surfaces anomalies, answers questions in plain English, creates exploratory visualizations, and generates a professional Data Story report.

The goal is simple: upload data, understand what matters, and move from raw tables to decisions faster.


Why InsightFlow?

Working with a new dataset often means spending hours inspecting columns, checking missing values, calculating statistics, building charts, and trying to understand what the numbers are actually saying.

InsightFlow automates that first layer of analysis.

Instead of starting with a blank spreadsheet or writing analysis code, users can upload their data and immediately see:

  • What is inside the dataset
  • How complete and reliable the data is
  • Which patterns stand out
  • Where potential anomalies exist
  • How numerical variables relate to each other
  • How categories are distributed
  • What questions are worth asking next
  • A professional report that explains the findings

Core Features

Automatic Dataset Profiling

InsightFlow immediately examines the uploaded dataset and identifies its structure.

It detects:

  • Number of rows and columns
  • Numerical variables
  • Categorical variables
  • Missing values
  • Duplicate records
  • Data completeness
  • Column-level characteristics

No manual setup is required.

Automatic Insights

The analysis engine automatically looks for meaningful patterns in the uploaded data.

Depending on the dataset, InsightFlow can identify:

  • Dominant categories
  • Skewed numerical distributions
  • Potential outliers
  • Strong relationships between numerical variables
  • Missing-data problems
  • Other dataset-specific observations

The analysis adapts to the structure of the uploaded dataset rather than assuming that every dataset contains the same type of information.

AI Analyst

Users can ask questions about their dataset using natural language.

Examples:

Which variable has the highest average?

Are there any unusual values?

What relationship exists between these variables?

Which category appears most frequently?

The Python analysis engine performs the actual statistical calculations. Google Gemini is used as an optional reasoning and narration layer to explain verified results in plain English.

This separation helps keep numerical results grounded in the underlying dataset.

Exploratory Analysis

The Explore section provides visual ways to investigate the dataset.

Depending on the available data, InsightFlow can provide:

  • Distribution charts
  • Category distributions
  • Correlation analysis
  • Correlation heatmaps
  • Scatter plots
  • Per-column exploration
  • Group comparisons

Available visualizations adapt according to the data types and variables present in the uploaded dataset.

Anomaly & Data Quality Analysis

InsightFlow checks the dataset for common quality issues before users make decisions from the data.

It examines:

  • Missing values
  • Duplicate rows
  • Numerical outliers
  • Distribution characteristics
  • Potential data-quality concerns

Outlier detection uses the IQR method where applicable.

Adaptive Data Story PDF

InsightFlow can generate a professional PDF report from the uploaded dataset.

The report is designed to adapt to the data rather than forcing every dataset into one rigid template.

Depending on what the dataset contains, the report can include relevant:

  • Dataset overview
  • Executive summary
  • Key findings
  • Categorical analysis
  • Numerical analysis
  • Distribution charts
  • Relationships and correlations
  • Anomaly and data-quality findings
  • Areas for further investigation
  • Methodology notes

The report only presents analysis that is relevant to the available data.

All statistical calculations are performed by the Python analysis pipeline. AI-generated narrative is used to explain verified findings rather than independently calculate statistics.


How It Works

Upload CSV / Excel
        ↓
Dataset Profiling
        ↓
Data Quality Checks
        ↓
Statistical Analysis
        ↓
Automatic Insights
        ↓
Interactive Exploration
        ↓
Natural-Language Q&A
        ↓
AI-Assisted Interpretation
        ↓
Adaptive Data Story PDF

InsightFlow separates computation from interpretation:

Python computes.
InsightFlow verifies.
Gemini explains.

This architecture helps prevent the language model from becoming the source of truth for numerical analysis.


Built For Different Datasets

InsightFlow is not tied to one specific dataset or industry.

A sales dataset can produce sales-related findings.

A survey dataset can surface category distributions and relationships.

A financial dataset can reveal numerical patterns and anomalies.

A housing dataset can expose relationships between property characteristics.

An unfamiliar dataset can still be profiled automatically without requiring the user to configure the analysis manually.

The available sections, charts, findings, and recommendations depend on what the uploaded dataset actually contains.


Technology Stack

Technology Purpose
Python Core analysis and application logic
Streamlit Interactive web application
Pandas Data loading and statistical analysis
NumPy Numerical computation
Plotly Interactive data visualization
ReportLab PDF report generation
Google Gemini Optional AI narration and interpretation
HTML / CSS Landing page
Git / GitHub Version control

Project Structure

insightflow/
│
├── app.py
├── requirements.txt
│
├── .streamlit/
│   └── config.toml
│
├── utils/
│   ├── __init__.py
│   └── data_loader.py
│
├── engine/
│   ├── __init__.py
│   ├── profiler.py
│   ├── analyzer.py
│   ├── visualizer.py
│   ├── auto_insights.py
│   ├── question_suggestions.py
│   └── ai_analyst.py
│
└── landing/
    └── index.html

Running InsightFlow Locally

Clone the repository:

git clone https://github.com/Qeeb5/insightflow.git
cd insightflow

Install the dependencies:

pip install -r requirements.txt

Start the Streamlit application:

streamlit run app.py

The application will then be available through the local Streamlit server.


Enabling AI Features

InsightFlow works without an AI API key.

The rule-based analysis engine can still perform the core profiling, calculations, insights, visualizations, and analysis.

For AI-powered narration and interpretation, configure your Google Gemini API key.

Set:

GOOGLE_API_KEY="your-api-key-here"

Then enable the AI functionality from the application.

The AI layer is optional. The statistical engine remains responsible for calculating the numerical results used throughout the analysis and reports.


Analytical Methodology

InsightFlow performs statistical analysis directly on the uploaded dataset using Python.

Depending on the available data, the analysis can include:

  • Descriptive statistics
  • Mean
  • Median
  • Standard deviation
  • Minimum and maximum values
  • Missing-value analysis
  • Duplicate detection
  • Categorical frequency analysis
  • Pearson correlation
  • Distribution analysis
  • IQR-based outlier detection

For outlier detection, values below:

Q1 - 1.5 × IQR

or above:

Q3 + 1.5 × IQR

are flagged as potential outliers.

Correlation analysis uses Pearson correlation on available numerical data.

Missing-value percentages are calculated against the total possible cells in the dataset.

AI-generated explanations are based on the statistics and findings produced by the Python analysis pipeline.


Design

InsightFlow uses a dark, analytical visual identity built around:

  • Near-black backgrounds
  • Amber signal accents
  • Teal analytical/trend accents
  • Clean typography
  • Card-based information hierarchy
  • Minimal visual noise

The standalone landing page follows the same visual language as the application.


Landing Page

InsightFlow also includes a standalone cinematic landing page located at:

landing/index.html

It can be opened directly in a browser without requiring a separate server.

When deployed, update the Launch InsightFlow destination so it points to the deployed application instead of the local Streamlit address.


Hackathon Vision

InsightFlow is built around a simple idea:

Data analysis should begin with understanding the data, not fighting the tools.

Traditional analysis workflows often require users to know what questions to ask before they can discover what matters.

InsightFlow reverses that process.

It first examines the dataset, identifies relevant patterns, highlights potential problems, and then gives the user tools to investigate further.

The result is a faster path from:

Raw Data → Understanding → Insight → Action


Current Status

InsightFlow is an actively developed AI data-analysis application.

The current system includes:

  • CSV and Excel upload
  • Automatic dataset profiling
  • Data-quality analysis
  • Automatic insight generation
  • Natural-language dataset questions
  • Exploratory visualizations
  • Correlation analysis
  • Anomaly detection
  • Optional Gemini-powered AI narration
  • Adaptive PDF Data Story generation
  • Dedicated landing page
  • Responsive analytical dashboard experience

Limitations

InsightFlow is designed primarily for exploratory data analysis.

Its findings should be treated as analytical guidance rather than proof of causation or a substitute for domain expertise.

Relationships identified through correlation do not necessarily imply causation, and potential outliers may represent either genuine observations or data-quality problems.

More advanced statistical modelling can be performed separately when deeper analysis is required.


Built With

InsightFlow
AI-Powered Data Analyst

Upload. Analyze. Understand.

Demo

Live Application

Launch InsightFlow

Presentation

View the InsightFlow Presentation

Screenshots

Dashboard

Explore

Automatic Insights

Automatic Insights

Natural-Language Analysis

Natural-Language Analysis

Data Story

Data Story

About

A no-code AI data analyst for CSV and Excel files that profiles datasets, finds patterns and anomalies, answers natural-language questions and generates charts and PDF reports.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages