Analytics Dashboard for a healthcare analytics dashboard built for Integrate Healthcare, a University of Michigan–based startup. The platform enables hospital administrators to track billing, claims, and operational data in a centralized, easy-to-understand interface.
- Build a scalable web-based dashboard to visualize hospital billing, operations, and claims data.
- Enable real-time insights for administrative decision-making for hospital administrators.
- Java
- Spring Boot
- Spring Data JPA
- PostgreSQL
- Next.js
- Tailwind CSS
- Tableau (analytics visualizations)
- AWS RDS for PostgreSQL database hosting
The data had four core relational tables, migrated from legacy CSV files to PostgreSQL:
- billing_transactions – individual billing and payment records
- claims – insurance claim submissions and statuses
- insurance_payers – payer data and contact information
- patient_insurance – patient insurance data
Frontend (Next.js + Tableau)
↓ HTTP
Spring Boot REST API
↓ JPA / Hibernate
PostgreSQL (AWS RDS)
The backend follows a layered architecture:
- Controllers for API exposure
- Repositories for database access via Spring Data JPA
The backend exposes RESTful endpoints to support frontend dashboards and visualizations:
GET /api/billing/transactions
GET /api/billing/claims
GET /api/billing/insurance-payers
GET /api/billing/patient-insurance
The frontend is built using Next.js and Tailwind CSS and serves as the primary interface for hospital administrators. It consumes data from the backend REST APIs and presents key billing, claims, and operational metrics in a clear, interactive format.
Data is fetched from the backend using client-side requests and React hooks, enabling the dashboard to stay up to date with the database.
For more analytics and visualization, the frontend integrates with Tableau, which is used to create charts and dashboards based on the backend-provided datasets.
- CSV parsing on every request does not scale and introduces file I/O overhead.
- Provides a PostgreSQL instance that the entire backend team can access consistently.
- Removes operational overhead by handling backups, monitoring, and availability automatically.
-
Run the backend:
mvn spring-boot:run
-
The API will be available at:
http://localhost:8080
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
The frontend will connect to the backend APIs for live data.
- Project Manager: Rhys Burman
- Analysts: Rayan Kamdem, Ajay Wadhwani, Mariam Mandwee, Akram Oudeif, Jainam Patel, Jessica Ni