Inspiration
Naftelia was inspired by the need for safer, smarter voyage planning on small boats and coastal cruisers. We wanted a lightweight app that brings official NOAA marine/weather data together with AI guidance so captains can plan routes without digging through multiple services.
What it does
- fetches NOAA/NWS forecasts and NOAA CO-OPS station data
- generates a conservative 24-hour voyage recommendation
- stores voyage history and vessel profiles
- offers a demo auth flow for quick local use
- provides a modern web UI with route planning and weather snapshots
How we built it
Backend: Flask API with NOAA and Gemini integration Frontend: Vite-powered web app using vanilla JS and modern UI patterns Local auth/demo mode to avoid external Auth0 dependency Uses public NOAA endpoints plus a Gemini-style LLM route planner
Challenges we ran into
- Auth0 setup added complexity, so we simplified to a hardcoded demo auth
- Windows port/socket issues blocked the default Flask host port
- Balancing real data fetch logic with a fallback route planner for unavailable regions
Accomplishments that we're proud of
- Real NOAA integration for weather and tide data
- AI-driven voyage planning fallback that still gives useful guidance
- A working full-stack prototype with frontend/backend communication
- Simplified developer experience for local demos
What we learned
- Public NOAA APIs are powerful but regionally constrained
- Removing external auth can greatly simplify onboarding
- Small boats and coastal route planning benefit from conservative safety-first guidance
- Demo mode is useful for rapid testing without production secrets
What's next for Naftelia
add broader regional weather providers beyond NOAA improve route planning with real navigation data and hazard awareness add user profiles, saved plans, and offline map support migrate from demo auth to a lightweight custom auth flow if needed
Built With
- css
- currently
- demo
- flask
- flask-cors
- geminiapi
- handling
- html
- javascript
- jwt
- leaflet.js
- lucide
- noaa
- pyjwt
- python
- python-dotenv
- replaced
- requests
- sqlite
- vanilla
- vertex
- vite
- with

Log in or sign up for Devpost to join the conversation.