|

Arduino Power Monitor

https://github.com/sainisahil1/arduino-power-monitor
  • Designed and implemented a complete IoT system using Arduino, MQTT, Spring Boot, and React.js to monitor energy consumption of connected devices.
  • Developed Arduino firmware in C++ to collect real-time current readings and transmit data via MQTT protocol using EMQX broker.
  • Built a Spring Boot backend that subscribes to MQTT topics for real-time data ingestion, processes device analytics, and stores time-series data in InfluxDB.
  • Chose InfluxDB for its performance with time-based data, leveraging features like downsampling, retention policies, and inverse indexing for historical querying.
  • Enabled real-time and historical visualization through a web dashboard (React.js) and a mobile app, both subscribing to the same MQTT topics.
  • Implemented daily, weekly, and monthly consumption analysis, with backend APIs providing statistical summaries.
  • Designed the system to support scalability and low latency, ensuring smooth real-time updates across all clients.
  • Focused on modular architecture with clear separation between device, broker, backend processing, and client interfaces.
circuit

Working Arduino Circuit

flow

Project Logic and Data Pipeline

ArduinoMQTTSpring BootInfluxDBReact.js

Formula 1 Dashboard Fullstack App

https://github.com/sainisahil1/formula1-dashboard
  • Fullstack project to browse Formula 1 races by year with race results, circuits, and locations
  • Web app built using React.js, Hooks, and CSS
  • Android app built with MVVM, LiveData, Data Binding, Retrofit, and Coroutines
  • Backend built with Spring Boot, Spring Batch, JPA, and JPQL
  • Used HSQLDB as in-memory database for development
  • Deployed web app on AWS Elastic Beanstalk
  • REST APIs power both web and mobile interfaces
  • Emphasis on learning fullstack development with real-world racing data
circuit

Mobile app home page with races filtered by the year.

flow

Standings for the selected race.

flow

Web app displaying standings filtered by year and race.

Spring BootReact.jsReact HooksAndroidSpring BatchJava Persistence APIHSQLMVVMCoroutinesRetrofit

Trip Management App

https://github.com/sainisahil1/Trip_Management_App
  • Android app to record and visualize trips on Google Maps.
  • Uses Fused Location Provider for accurate and efficient location tracking.
  • Trips are stored locally using Room Database for offline access.
  • Implements MVVM architecture, Coroutines, and LiveData for robust performance.
  • Integrated Google Maps SDK for interactive trip visualization.
  • Debug APK included for quick testing and deployment.
circuit

Home page to start/stop location tracking

flow

Locally saved trips.

flow

Trip route visualization on a map.

AndroidRoomMVVMData BindingCoroutinesFused Location ProviderGoogle Maps

Shoppe (Current)

https://github.com/sainisahil1/Shoppe
  • Built a modern e-commerce Android application using Jetpack Compose.
  • Implemented composable UI components for product listings, detail pages, cart functionality, and bottom navigation.
  • Focused on clean architecture with modular components to allow easy future API integration and state management.
  • Achieved pixel-perfect UI fidelity by carefully translating Figma layouts into Compose design system.
  • Ensured responsive layout across different screen sizes and orientations.
circuit

Home Page

flow

Login Page

AndroidKotlinJetpack ComposeRoomClean Architecture

My Portfolio (Current)

https://github.com/sainisahil1/my-portfolio
  • Built with Next.js (App Router) and styled using Tailwind CSS.
  • Features typing animation headline and responsive multi-page layout.
  • Sections include Skills, Experience, Projects, and Services.
  • Includes external links to LinkedIn and GitHub.
  • Clean and maintainable code with ESLint and PostCSS.
  • Future updates planned: page transition animations and project filtering.
Next.jsReact.jsTailwind CSSReact Icons