Files
AreWeBuried/app.py

40 lines
1.0 KiB
Python

from flask import Flask, render_template, jsonify, request
from utils.weather import get_today_snowfall
from utils.geocode import get_city_name
from config import MAX_SNOW_INCHES
app = Flask(__name__)
@app.route("/")
def index():
return render_template("index.html")
@app.route("/api/snowfall")
def snowfall_api():
lat = request.args.get("lat", type=float)
lon = request.args.get("lon", type=float)
if lat is None or lon is None:
return jsonify({"error": "Missing lat/lon"}), 400
inches, snowing, tz_name = get_today_snowfall(lat, lon)
city_name = get_city_name(lat, lon)
from datetime import datetime
import pytz
today = datetime.now(pytz.timezone(tz_name)).strftime("%B %d, %Y")
return jsonify({
"location": city_name,
"lat": lat,
"lon": lon,
"inches": inches,
"max_inches": MAX_SNOW_INCHES,
"snowing": snowing,
"today": today,
"updated": datetime.now().isoformat()
})
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5000)