This Research Assistant is a minimal, AI-powered research assistant designed to perform two high-value tasks: summarization and intelligent suggestion. It allows users to input raw text or queries and receive concise summaries along with relevant, context-aware suggestions to guide further exploration.
Spring AIGemini APIViteJava (Spring Boot)JavascriptTailwind CSS
ResearchAssist focuses on doing a few things exceptionally well:
-
Summarization Engine: Transform long-form content into concise, structured summaries without losing key meaning
-
Contextual Suggestions: Generate relevant next steps such as related topics, follow-up questions, or areas to explore
This project began as a simple idea: "What if healthcare felt more human?" I spent many late nights sketching wireframes and imagining how technology could connect patients and doctors.
The journey started with research; I spoke with doctors, patients, and healthcare workers to grasp their real challenges. Then I faced technical hurdles: creating a voice interface that feels natural, developing a backend that securely manages sensitive medical data, and designing a mobile app that operates as smoothly as the web version.
Building WellNest was like conducting an orchestra; every piece needed to work in harmony:
A lightweight and secure backend handles request processing and rate limiting. The architecture is modular, ensuring AI-related logic remains isolated and extensible.
This is the core functional layer.
- Input text is processed through structured prompts
- The Gemini API generates a concise, context-preserving summary
- The same input (or its summary) is analyzed
- The system generates:
- Related topics
- Follow-up questions
- Suggested directions for deeper research
Spring AI orchestrates prompt management and response handling, ensuring consistency and clarity.
The frontend is intentionally minimal:
- Input field for text or query
- Output sections for:
- Summary
- Suggestions
Built with Vite for speed and responsiveness, the UI prioritizes clarity over feature bloat.
- Frontend deployed on Vercel/Netlify
- Backend deployed as a Spring Boot service
- Gemini API securely integrated via environment variables
This project taught me many important lessons:
- Spring Boot (Java): Narrowing the scope to summarization and suggestion enabled a clean, modular backend architecture, improving maintainability and overall usability
- Spring AI + Gemini API: Leveraging Spring AI for prompt orchestration with the Gemini API emphasized how precise prompt engineering directly affects summary quality and suggestion relevance
- Spring Boot (Service Layer Architecture): Separating summarization and suggestion into distinct service layers improved scalability, debugging, and extensibility
- Spring Boot + Vite (Performance Optimization): Optimizing end-to-end latency across the Spring Boot backend and Vite frontend ensured fast, responsive interactions essential for AI-driven workflows
Each part of this project helped me understand more about building apps, managing complex information, and improving user experience. It was more than just making a tool. It was about solving problems, learning new things, and improving my skills for future work.
- Streaming Responses: Real-time summary generation
- Custom Summary Modes: Bullet points, abstract, or detailed breakdowns
- Domain-Specific Suggestions: Tailored outputs for technical, academic, or general content
- File Input Support: Upload PDFs or documents directly
- History Tracking: Save and revisit previous summaries
To run the project in your local environment, follow these steps:
- Clone the repository
- Start backend:
./mvnw spring-boot:run
- Start frontend:
npm install npm run dev
- Open
http://localhost:5173