[Showcase] A Zero-Dependency PWA Chat UI for Chrome’s Built-in Gemini Nano

A Zero-Dependency PWA Chat UI for Chrome’s Built-in Gemini Nano

Hello everyone,

I’m excited to share a project I’ve been working on: chrome_ai_ui—a modern, feature-rich Progressive Web App (PWA) designed to provide a seamless chat interface for Chrome’s built-in Gemini Nano model.

My goal was to create the most private and performant chat experience possible by using the native Chrome AI API directly, without any external servers or frameworks.

:sparkles: Why This Project is Unique

  • Zero Dependencies: The entire application is built using pure vanilla JavaScript, HTML, and CSS, ensuring minimal overhead and blazing-fast performance.
  • Privacy-First PWA: All conversation history and data are stored locally using IndexedDB. There are no external API calls, servers, or tracking.
  • Feature-Rich UI: Despite the “zero dependency” constraint, it supports multi-turn conversations, live streaming responses, dark/light themes, and persistent chat history.
  • Multimodal File Support: The app can upload and process multiple files (images, text files like JSON/CSV/Markdown) in a single message, with live previews before sending.

:light_bulb: Seeking Feedback

I am currently refining this as a robust prototype and would greatly appreciate any feedback from the Google AI developer community, especially regarding:

  1. Chrome API Integration: Are there any optimizations or best practices I missed when interfacing with the built-in Gemini Nano API?
  2. Architecture: Thoughts on the vanilla JS MVC architecture and the separation of concerns (especially in ChatService.js vs. ChatApplication.js).
  3. UX/Feature Prioritization: Based on your experience with Gemini, which features from the Roadmap (e.g., Voice Input/Output, Plugins) would you recommend prioritizing next?

Thank you for taking a look!