Skip to content

ahammadnafiz/Analyzia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– Analyzia

Talk to your data. Instantly analyze, visualize, and transform.

License: MIT Python 3.11+ Streamlit Powered by LangChain Google Gemini


Transform your CSV data into meaningful insights with AI-powered analysis and beautiful visualizations

πŸš€ Get Started β€’ πŸ“– Documentation β€’ 🀝 Contributing β€’ πŸ’¬ Support

πŸ“‹ Table of Contents

✨ Features

πŸ€– AI-Powered Analysis

  • Natural Language Queries: Ask questions in plain English
  • Intelligent Data Interpretation: Understands context and relationships
  • Google Gemini Integration: Powered by cutting-edge AI

πŸ“Š Advanced Visualizations

  • Professional Charts: Beautiful, publication-ready plots
  • Interactive Dashboards: Plotly-powered dynamic visualizations
  • Statistical Graphics: Correlation matrices, distributions, trends

πŸ” Smart Data Processing

  • Automatic Data Validation: Intelligent error detection
  • Type Inference: Smart column type recognition
  • Missing Data Handling: Robust data cleaning

πŸ’¬ Conversational Interface

  • Chat-Based Interaction: Intuitive conversation flow
  • Memory Retention: Remembers previous questions
  • Error Recovery: Graceful handling of edge cases

🎯 What Makes Analyzia Special

πŸš€ No Code Required

Transform complex data analysis into simple conversations. No need to write SQL queries or Python scripts.

🧠 Context-Aware AI

Analyzia understands your data structure and provides relevant insights based on your specific dataset.

πŸ“ˆ Professional Reporting

Get comprehensive analysis reports with:

  • Executive summaries
  • Statistical insights
  • Business recommendations
  • Actionable next steps

🎨 Beautiful Visualizations

Every chart is professionally styled with:

  • Modern color palettes
  • Clear annotations
  • Publication-ready quality
  • Interactive elements

πŸ–ΌοΈ Screenshots

Analyzia Interface

Analyzia's intuitive interface - Upload your CSV, ask questions in natural language, and get AI-powered insights with beautiful visualizations

✨ Key Interface Features:

  • 🏠 Clean Welcome Screen - Intuitive interface to get you started
  • πŸ“Š Data Analysis in Action - AI-powered insights with beautiful visualizations
  • πŸ’¬ Natural Language Queries - Ask questions like "Show me the correlation between sales and profit"
  • πŸ€– Conversational AI - Chat-based interaction with memory retention
  • πŸ“ˆ Professional Charts - Publication-ready visualizations

πŸš€ Quick Start

Prerequisites

  • 🐍 Python 3.11 or higher
  • πŸ”‘ Google API Key (Get one here)

1️⃣ Clone the Repository

git clone https://github.com/ahammadnafiz/Analyzia.git
cd Analyzia

2️⃣ Install Dependencies

pip install -r requirements.txt

3️⃣ Set Up Environment

Create a .env file in the project root:

GOOGLE_API_KEY=your_google_api_key_here

4️⃣ Launch Analyzia

streamlit run app.py

5️⃣ Start Analyzing

  1. πŸ“€ Upload your CSV file
  2. πŸ’¬ Ask questions about your data
  3. πŸ“Š Get instant insights and visualizations

βš™οΈ Installation

Option 1: Standard Installation

# Clone repository
git clone https://github.com/ahammadnafiz/Analyzia.git
cd Analyzia

# Create virtual environment (recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

Option 2: Development Installation

# Clone repository
git clone https://github.com/ahammadnafiz/Analyzia.git
cd Analyzia

# Install in development mode
pip install -e .
pip install -r requirements.txt

πŸ”§ Configuration

Environment Variables

Create a .env file with the following variables:

# Required
GOOGLE_API_KEY=your_google_api_key_here

# Optional
STREAMLIT_SERVER_PORT=8501
STREAMLIT_SERVER_ADDRESS=localhost

Google API Key Setup

  1. 🌐 Visit Google AI Studio
  2. πŸ”‘ Create a new API key
  3. πŸ“‹ Copy the key to your .env file
  4. βœ… Ensure billing is enabled for your Google Cloud project

πŸ“Š Usage Examples

Basic Data Analysis

# Upload your CSV file through the web interface
# Then ask natural language questions:

"What are the main trends in this dataset?"
"Show me the correlation between sales and profit"
"Which product category has the highest revenue?"
"Create a visualization showing monthly sales trends"

Advanced Queries

# Statistical Analysis
"Perform a statistical summary of all numeric columns"
"Find outliers in the sales data"
"What's the distribution of customer ages?"

# Business Intelligence
"Which regions are underperforming?"
"What factors contribute most to customer satisfaction?"
"Show me year-over-year growth rates"

Visualization Requests

# Chart Types
"Create a scatter plot of price vs sales"
"Show me a heatmap of correlations"
"Generate a bar chart of top 10 products"
"Make a time series plot of revenue trends"

πŸ—οΈ Architecture

graph TD
    A[User Input] --> B[Streamlit Interface]
    B --> C[LangChain Agent]
    C --> D[Google Gemini LLM]
    D --> E[Python Code Generation]
    E --> F[Data Processing]
    F --> G[Matplotlib/Plotly Visualization]
    G --> H[Streamlit Display]
    
    I[CSV Upload] --> J[Pandas DataFrame]
    J --> F
    
    K[Conversation Memory] --> C
    L[Error Handling] --> C
Loading

Key Components

  • πŸ–₯️ Streamlit Frontend: Clean, responsive web interface
  • πŸ€– LangChain Agent: Orchestrates AI interactions
  • 🧠 Google Gemini: Powers natural language understanding
  • πŸ“Š Visualization Engine: Creates beautiful charts and graphs
  • πŸ’Ύ Memory System: Maintains conversation context

πŸ› οΈ Technology Stack

Category Technologies
πŸ–₯️ Frontend Streamlit, HTML/CSS
πŸ€– AI/ML LangChain, Google Gemini, Python AST
πŸ“Š Data Processing Pandas, NumPy, SciPy
πŸ“ˆ Visualization Matplotlib, Seaborn, Plotly
πŸ”§ Backend Python 3.11+, dotenv
πŸ§ͺ Development Git, Virtual Environment

🀝 Contributing

We welcome contributions from the community! Here's how you can help:

πŸ› Bug Reports

  1. Check existing issues first
  2. Create a detailed bug report with:
    • Steps to reproduce
    • Expected behavior
    • Actual behavior
    • Screenshots (if applicable)

✨ Feature Requests

  1. Open an issue with the enhancement label
  2. Describe the feature and its benefits
  3. Provide use cases and examples

πŸ”§ Code Contributions

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Commit your changes: git commit -m 'Add amazing feature'
  4. Push to the branch: git push origin feature/amazing-feature
  5. Open a Pull Request

πŸ“‹ Development Guidelines

  • Follow PEP 8 style guidelines
  • Add docstrings to functions and classes
  • Include tests for new features
  • Update documentation as needed

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

MIT License - Free for commercial and personal use

πŸ’¬ Support

πŸ†˜ Getting Help

πŸ“ž Contact

  • πŸ‘¨β€πŸ’» Developer: ahammadnafiz
  • πŸ™ GitHub: @ahammadnafiz
  • πŸ“§ Email: Create an issue for support

πŸ™ Acknowledgments

Special thanks to:

  • πŸ€– Google AI: For providing the Gemini API
  • 🦜 LangChain: For the excellent AI framework
  • 🎨 Streamlit: For the amazing web app framework
  • πŸ“Š Plotly: For interactive visualizations
  • 🐼 Pandas: For data manipulation capabilities
  • 🀝 Open Source Community: For continuous inspiration

Made with ❀️ by ahammadnafiz

If you found this project helpful, please consider giving it a ⭐ star!

About

Talk to your data. Instantly analyze, visualize, and transform

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages