nelsongpt
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in miliseconds.
A specialized medical AI assistant powered by the Nelson Textbook of Pediatrics, designed for healthcare professionals and medical students.
- 🏥 Medical AI assistant with evidence-based responses
- 📱 Progressive Web App (PWA) with offline functionality
- 💬 ChatGPT-like interface with real-time streaming responses
- 🔍 RAG (Retrieval-Augmented Generation) workflow
- 📚 Powered by Nelson Textbook of Pediatrics content
- 🎨 Modern, clean UI with smooth transitions
- 📲 Full-screen mobile experience
- 🔔 Push notifications support
- Frontend: React + TypeScript + Tailwind CSS
- Backend: Hono API framework
- Database: Supabase with PGVector for vector search
- AI: Mistral API for LLM responses
- Embeddings: Hugging Face sentence-transformers
- Animations: Lottie
- PWA: Service Worker + IndexedDB
├── backend/
│ ├── index.ts # Main API server
│ ├── routes/
│ │ ├── chat.ts # Chat API endpoints
│ │ └── embeddings.ts # Embedding generation
│ └── services/
│ ├── supabase.ts # Supabase client
│ ├── mistral.ts # Mistral API client
│ └── embeddings.ts # HuggingFace embeddings
├── frontend/
│ ├── index.html # Main HTML template
│ ├── index.tsx # React entry point
│ ├── components/
│ │ ├── App.tsx # Main app component
│ │ ├── SplashScreen.tsx
│ │ ├── ChatInterface.tsx
│ │ ├── Sidebar.tsx
│ │ └── MessageBubble.tsx
│ ├── hooks/
│ │ └── useChat.ts # Chat functionality hook
│ ├── services/
│ │ ├── api.ts # API client
│ │ └── offline.ts # Offline storage
│ ├── manifest.json # PWA manifest
│ └── sw.js # Service worker
└── shared/
└── types.ts # Shared TypeScript types
The following environment variables are configured:
VITE_MISTRAL_API_KEY
: Mistral API key for LLM responsesVITE_SUPABASE_URL
: Supabase project URLVITE_SUPABASE_ANON_KEY
: Supabase anonymous keyVITE_SUPABASE_SERVICE_ROLE_KEY
: Supabase service role keyVITE_HUGGINFACE_API_KEY
: Hugging Face API key for embeddings
- The app is configured as an HTTP val
- Visit the app URL to access Nelson-GPT
- Install as PWA on mobile devices for full-screen experience
- Chat with the AI assistant for pediatric medical queries
- Real-time streaming responses
- Message history
- Typing indicators
- Mobile-optimized input
- Service worker caching
- IndexedDB for message persistence
- Offline-first architecture
- RAG workflow with Nelson Textbook content
- Vector similarity search
- Evidence-based responses
- Pediatric specialization