Skip to content

velocitatem/proxima_tech

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Proxima Tech Smart Dashboard MVP

An interactive, AI-powered dashboard for analyzing residency trends, demographic data, and sentiment analysis.

Python Streamlit Plotly OpenAI

Proxima Tech Smart Dashboard combines Streamlit, Plotly, and OpenAI's API to provide insights into demographic trends and immigration data, with interactive plots and AI-enhanced analysis.


Table of Contents

  1. Features
  2. Installation
  3. Usage
  4. Code Walkthrough
  5. Example Outputs
  6. Project Structure
  7. Contributing
  8. License
  9. Contact

Features

  • AI-Powered Insights: Uses OpenAI's API to generate meaningful responses to user queries.
  • Interactive Visualizations: Leverages Plotly to create dynamic charts (scatter plots, heatmaps, and bar charts).
  • Synthetic Data Generation: Generates realistic datasets for trust, corruption, and policy impact analysis.
  • Custom News Feed: Displays curated news headlines with sentiment analysis.
  • User-Friendly Interface: Built using Streamlit for a seamless user experience.

Installation

Follow these steps to set up the dashboard locally:

  1. Clone the Repository:

    git clone https://github.com/velocitatem/proxima_tech.git
    cd proxima_tech
  2. Set Up a Virtual Environment:

    python3 -m venv venv
    source venv/bin/activate  # For Linux/Mac
    venv\Scripts\activate     # For Windows
  3. Install Dependencies:

    pip install -r requirements.txt
  4. Set Environment Variables: Add your OpenAI API key to a .env file in the project directory:

    OPENAI_API_KEY=your_openai_api_key
  5. Run the Application:

    streamlit run main.py

Usage

  1. Launch the dashboard and use the sidebar to enter your query.
  2. View AI-generated answers, interactive charts, and curated news.
  3. Explore synthetic data visualizations like:
    • Trust in Government vs. Corruption Perception
    • Policy Impact Score vs. Sentiment Analysis

Code Walkthrough

  • main.py: Entry point for the Streamlit application.
  • generate_data(): Creates a synthetic dataset with demographic and trust metrics.
  • get_data(): Fetches AI-generated insights from OpenAI's API and caches results.
  • extract_data(): Extracts CSV-formatted responses for plotting.
  • generate_plot(): Creates visualizations dynamically based on the data.
  • NEWS: Static news data with sentiment scores for display.

Example Outputs

News Feed

  • "Venezuelan residents in Spain increased by 46% this year, reaching 140,214 approvals."
  • "There was a significant 75% decrease in residency approvals for Ukrainians."

Dynamic Plots

User queries like "What is the demographic distribution of immigrants?" produce real-time visualizations.


Project Structure

proxima_tech/
├── main.py                  # Streamlit dashboard entry point
├── cache.json               # Local cache for API responses
├── requirements.txt         # Project dependencies
├── .env                     # OpenAI API Key
└── README.md                # Project documentation

Contributing

We welcome contributions! Follow these steps:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/my-feature
  3. Commit your changes:
    git commit -m "Add my feature"
  4. Push to the branch:
    git push origin feature/my-feature
  5. Open a pull request on GitHub.

Proxima Tech Smart Dashboard — Empowering data-driven decisions with AI-powered visualizations 🚀.

Releases

No releases published

Packages

No packages published

Languages