An open API service indexing awesome lists of open source software.

https://github.com/brej-29/collaborative-data-insights-portal

Collaborative Data Insights Portal is a real-time dashboarding app where users can upload datasets, auto-generate or manually build charts, edit them live across tabs with WebSockets, and persist configurations in the backend. Built with React, Spring Boot, and WebSocket-based sync for seamless multi-user collaboration.
https://github.com/brej-29/collaborative-data-insights-portal

analytics-portal auto-chart-generation backend-persistence chart-sync chartjs collaborative-analytics dashboard data-cleaning data-visualization dataset-insights frontend live-editing multi-user openrouter react real-time-collaboration spring-boot ui websocket

Last synced: 4 months ago
JSON representation

Collaborative Data Insights Portal is a real-time dashboarding app where users can upload datasets, auto-generate or manually build charts, edit them live across tabs with WebSockets, and persist configurations in the backend. Built with React, Spring Boot, and WebSocket-based sync for seamless multi-user collaboration.

Awesome Lists containing this project

README

          


πŸ“Š Collaborative AI Dashboard


Build, auto-generate, and collaboratively edit interactive dashboards with AI-powered chart recommendations, real-time WebSocket sync, and secure user authentication β€” built with React, Spring Boot & WebSockets





Last Commit

Language
Framework
WebSockets
AI
Database
License




Built with the tools and technologies:



React | TypeScript | Spring Boot | Postgres | WebSockets (STOMP) | OpenRouter API | JWT Auth

---

## **Table of Contents**
* [Overview](#overview)
* [Features](#features)
* [Getting Started](#getting-started)
* [Project Structure](#project-structure)
* [Prerequisites](#prerequisites)
* [Installation](#installation)
* [Configuration](#configuration)
* [Usage](#usage)
* [Completed Work](#completed-work)
* [Pending Work](#pending-work)
* [License](#license)
* [Contact](#contact)

---

## **Overview**

Collaborative AI Dashboard is an interactive web platform where users can **upload datasets, auto-generate meaningful visualizations via AI, and collaborate in real-time** with other users. The system blends **AI intelligence**, **real-time sync**, and **multi-user support** to enable data-driven insights quickly and effectively.

---

### **Project Highlights**
- **AI Auto-Charting:** Suggests charts and mappings via OpenRouter API based on dataset samples.
- **Manual Chart Builder:** Create bar, line, pie, scatter, histogram, radar, doughnut, area charts, and more.
- **Collaboration:** Real-time editing, add/delete sync, and WebSocket-based updates across tabs/sessions.
- **Persistence:** Save and reload charts via a Postgres-backed Spring Boot API.
- **Authentication:** Secure login/signup with JWT-based authentication and role-based access.
- **Scalable Design:** Extensible architecture to add more AI/ML, export options, and UI polish.

---

## **Features**
- AI-driven chart recommendations with editable configurations.
- Multi-component dashboards: render multiple charts on one screen.
- WebSocket-powered real-time chart updates, add, and delete sync.
- Save/load charts per dataset and per user.
- Data Cleaner for missing values, type issues, and outliers.
- Secure login/signup flow with user-specific charts and datasets.
- Backend persistence with Postgres and JPA.

---

## **Getting Started**

### **Project Structure**

collaborative-dashboard/
β”œβ”€ frontend/ # React + TS client
β”‚ β”œβ”€ src/
β”‚ β”‚ β”œβ”€ components/ # Chart blocks, dashboard
β”‚ β”‚ β”œβ”€ context/ # WebSocket context provider
β”‚ β”‚ β”œβ”€ pages/ # Login, Signup, Dashboard
β”‚ β”‚ └─ api/ # Axios calls to backend
β”œβ”€ backend/ # Spring Boot server
β”‚ β”œβ”€ controller/ # Chart, Dataset, Auth APIs
β”‚ β”œβ”€ model/ # Entities: User, Dataset, Chart
β”‚ β”œβ”€ repository/ # Spring Data JPA repos
β”‚ β”œβ”€ security/ # JWT filters, user provider
β”‚ └─ service/ # Business logic
β”œβ”€ docker/ # Deployment configs (future)
β”œβ”€ README.md
└─ LICENSE

### **Prerequisites**
- Node.js **18+**
- Java **17+**
- Postgres **15+**
- OpenRouter API key for AI chart suggestions

### **Installation**
1) Install frontend dependencies:

cd frontend
npm install

2) Run backend:

cd backend
./mvnw spring-boot:run

3) Run frontend:

cd frontend
npm start

### **Configuration**
- Configure `.env` in frontend with API base URL.
- Configure `application.properties` in backend with Postgres DB connection and JWT secret.

### **Usage**
1) Sign up and log in.
2) Upload/select a dataset.
3) Generate AI-suggested charts or manually create them.
4) Save charts β†’ reload them when selecting the same dataset.
5) Edit, delete, and see changes in real-time across sessions.

---

## **Completed Work**
- βœ… Manual chart builder with multiple chart types.
- βœ… AI auto-generation of charts via OpenRouter.
- βœ… WebSocket setup for real-time edit sync.
- βœ… Save to backend & load per dataset/user.
- βœ… Delete charts from backend & UI.
- βœ… Prevent duplicate chart insertion.
- βœ… Secure login/signup with JWT authentication.

---

## **Pending Work**
- πŸ”„ WebSocket sync for add/delete across tabs.
- πŸ”„ Real-time multi-user collaboration (beyond same-user).
- πŸ”„ Drag-and-drop repositioning of charts in the dashboard.
- πŸ”„ Enhanced UI/UX based on reference designs.
- πŸ”„ Data Cleaner enhancements with aggregation support.
- πŸ”„ Export options: PDF/Excel snapshot of dashboards.
- πŸ”„ Containerization & deployment with Docker.

---

## **License**
This project is licensed under the MIT License. See the `LICENSE` file for details.

---

## **Contact**
πŸ’¬ Want to collaborate or contribute? Issues and PRs are welcome!
Reach me on [LinkedIn](https://www.linkedin.com/in/brejesh-balakrishnan-7855051b9/).

---

πŸš€ Let’s build the most **intelligent, collaborative data dashboard** together!