How virajpa4/weather-alert-system works
This Django site serves weather lookup and chatbot responses, alongside account, contact, and informational pages. The main implemented workflow is a user request routed through Django URLs to a view; weather views fetch wttr.in data and render or return a response. Contact submissions are saved and emailed. The README also describes 50 km alerts, but marks them as under development; the sampled runtime source shows no radius calculation or notification implementation, so that capability is shown as planned only.
Main entry points: views.py Contact handler · project/urls.py Password flows · models.py Contact record · app/urls.py App routes
Components 20
Weather experience
- Weather lookup
app/views.py - Weather chatbot
app/views.py - Weather fetcher
app/views.py - Weather page
templates/weather.html - Radius alerts planned
README.md
Accounts
- Account views
app/views.py - Django auth
- Auth templates
templates/auth - Password flows
project/urls.py - Password templates
templates/common
Contact handling
- Contact handler
app/views.py - Contact page
templates/contact.html - Contact record
app/models.py - SQLite database
- SMTP email
Web routing
- Project routes
project/urls.py - App routes
app/urls.py - Django views
app/views.py
Other components
- Site user
- wttr.in API
Connections 21
- Site user → Project routes: requests pages
- Project routes → App routes: includes routes
- App routes → Django views: dispatches requests
- Django views → Weather lookup: dispatches weather
- Django views → Weather chatbot: dispatches chat
- Weather lookup → Weather fetcher: calls fetcher
- Weather chatbot → Weather fetcher: calls fetcher
- Weather fetcher → wttr.in API: fetches conditions
- Weather lookup → Weather page: renders result
- Site user → Account views: submits credentials
- Account views → Django auth: authenticates user
- Account views → Auth templates: renders account forms
- Project routes → Password flows: routes password flows
- Password flows → Django auth: uses auth views
- Password flows → Password templates: renders forms
- Site user → Contact handler: submits inquiry
- Contact handler → Contact page: renders form
- Contact handler → Contact record: creates record
- Contact record → SQLite database: persists record
- Contact handler → SMTP email: sends messages
- Radius alerts planned → Site user: planned notifications