Ashland Weather

National Weather Service forecast

Location search powered by OpenStreetMap-based geocoding

Loading weather...

Current Conditions

--°F
Loading...

Humidity: --

Wind: --

Station: --

Observed: --

Hourly Forecast

Forecast

Technical Demonstration

AWS Weather Application

This site is a working demonstration project designed, developed, and deployed on Amazon Web Services. It combines a browser-based weather application with an infrastructure-as-code deployment architecture.

Application

The application retrieves live weather information from National Weather Service APIs, including current observations, hourly forecasts, multi-day forecasts, and active weather alerts.

AWS Architecture

  • Amazon S3 private website origin
  • Amazon CloudFront content delivery
  • CloudFront Origin Access Control
  • Amazon Route 53 DNS
  • AWS Certificate Manager TLS certificate

Infrastructure as Code

The AWS infrastructure is defined in Python using the AWS Cloud Development Kit (CDK). CDK synthesizes the infrastructure definition into AWS CloudFormation templates for repeatable deployment.

Secure Delivery

The S3 bucket is not exposed directly to the public internet. CloudFront accesses the private origin through Origin Access Control and delivers the application to users over HTTPS.

DNS & HTTPS

The custom hostname weather.davidscottbrown.com is managed with Amazon Route 53 and uses an AWS Certificate Manager certificate for encrypted HTTPS delivery through CloudFront.

Cross-Region Architecture

The application infrastructure is managed from an AWS stack in us-east-2, while the CloudFront certificate is provisioned in us-east-1. Separate CDK stacks manage the cross-region resources.

External APIs

Weather forecasts, observations, and alerts come from the National Weather Service. Location search converts user-entered city names and ZIP codes into geographic coordinates for forecast lookup.

Automated Deployment

CDK deploys the website files to Amazon S3 and connects the site to the existing CloudFront distribution. Deployments also invalidate cached CloudFront content so updated application files can be delivered.

Technologies demonstrated: AWS CDK, Python, CloudFormation, Amazon S3, CloudFront, Origin Access Control, Route 53, AWS Certificate Manager, DNS, HTTPS, JavaScript, HTML, CSS, REST API integration, infrastructure as code, and AWS deployment troubleshooting.

↑ Back to weather