What if an AI application could create something new every morning without waiting for you to open it?
That was the idea behind Daily Sky Haiku — an always-on creative agent that uses real-world weather data from Kochi, Kerala, to generate a fresh three-line haiku every morning.
Built using Amazon Bedrock, AWS Lambda, Amazon EventBridge, and Amazon S3, the application automatically retrieves weather information, generates a poem using Amazon Nova Lite, and publishes the latest result to a public website.
There is no Generate button. No manual prompt. The entire process runs automatically in the background.
🌐 Live Demo: https://daily-sky-haiku-jyothish.netlify.app/
💻 GitHub Repository: https://github.com/GunnerJyo/daily-sky-haiku
🌤️ The Idea: A Creative App That Works Without You
Most AI creative applications require someone to open an app, enter a prompt, and click a button.
I wanted to build something different.
For this challenge, I turned a simple AI poetry application into an autonomous creative agent.
Every morning, Daily Sky Haiku retrieves the current weather in Kochi, Kerala, using the Open-Meteo API. The weather information is then sent to Amazon Bedrock, where Amazon Nova Lite generates an original haiku inspired by the conditions.
The generated poem and its associated weather information are saved online, and the public website displays the latest creation.
For example, a rainy morning might inspire a poem like this:
Whispers of the monsoon
Silent rain on Kochi's streets
Silent, soft, and sweet.
The goal is to make the website feel like a small digital poetry journal that writes a new entry every morning.
🏗️ Architecture Overview
I designed Daily Sky Haiku as a lightweight serverless workflow.
Amazon EventBridge
Daily Schedule
(7:00 AM IST)
|
v
AWS Lambda
|
+--------+---------+
| |
v v
Open-Meteo Amazon Bedrock
Weather API Amazon Nova Lite
| |
| v
| Generate Haiku
| |
+--------+---------+
|
v
Amazon S3
latest.json
|
v
Netlify
Public Website
The key idea is that each component has a specific responsibility. EventBridge handles scheduling, Lambda coordinates the workflow, Open-Meteo provides real-world weather data, Bedrock generates the poem, and S3 stores the result.
AWS Services and Technologies Used
Service / Technology
Purpose
Amazon EventBridge
Triggers the workflow every morning
AWS Lambda
Coordinates the complete workflow
Amazon Bedrock
Provides generative AI capabilities
Amazon Nova Lite
Generates the weather-inspired haiku
Amazon S3
Stores the latest result as JSON
AWS IAM
Manages permissions for AWS resources
Open-Meteo API
Supplies weather information
Netlify
Hosts the public frontend
⚙️ How It Works
The complete workflow consists of six steps.
- EventBridge Triggers the Workflow
I created an EventBridge scheduled rule named daily-sky-haiku-morning.
The schedule uses this cron expression:
cron(30 1 * * ? *)
This corresponds to 7:00 AM IST every day, because the schedule is evaluated in UTC.
- Lambda Retrieves Weather Information
AWS Lambda runs the backend workflow and retrieves the current weather information for Kochi using the Open-Meteo API.
The weather data provides real-world context for the poem.
- Amazon Bedrock Generates the Haiku
Lambda prepares a creative prompt using the retrieved weather information and sends it to Amazon Bedrock.
I use Amazon Nova Lite to generate a weather-themed poem consisting of three lines.
The prompt encourages the model to connect the poem to the current environment rather than producing a completely unrelated piece of poetry.
- Lambda Prepares the Result
After receiving the generated poem, Lambda combines it with additional information, including:
Location
Temperature
Humidity
Weather conditions
Generation timestamp
This makes the final result more informative than a standalone poem.
- Amazon S3 Stores the Latest Haiku
The generated result is stored in Amazon S3 as a JSON object named:
latest.json
Keeping the result in a predictable location makes it straightforward for the frontend to retrieve the latest creation.
- The Website Displays the Poem
The public frontend, deployed on Netlify, reads the stored JSON file and displays the latest haiku.
By the time someone visits the website, the scheduled workflow has already generated the content.
The application can create new content even when nobody is visiting the website. That is the core idea behind Daily Sky Haiku.
🧠 Why This Is an AI Agent
One of the biggest lessons from this project was understanding that the AI model itself is not the entire agent.
Amazon Nova Lite generates the poem, but the surrounding architecture makes the application autonomous.
EventBridge decides when the workflow starts.
Lambda coordinates the execution.
Open-Meteo provides external context.
Amazon Bedrock generates the creative output.
Amazon S3 preserves the result.
Netlify makes the content publicly accessible.
Together, these components form an automated workflow that gathers information, generates content, and leaves the result ready for someone to discover later.
The application doesn't need a person to initiate every generation.
🧩 Design Decisions and Challenges
Keeping the Architecture Simple
I wanted to avoid introducing unnecessary services for a project whose main purpose was demonstrating autonomous creative generation.
The combination of EventBridge, Lambda, Bedrock, and S3 provides the core functionality without requiring a traditional server.
Separating the Frontend from the Backend
I initially experimented with Amazon S3 static website hosting. During development, I encountered issues where the local HTML page appeared blank and the browser did not load the expected content.
I eventually separated the public presentation layer from the AWS backend and deployed the frontend using Netlify.
This made development and deployment easier while keeping the automated workflow on AWS.
Configuring IAM Permissions
The Lambda execution role needed the appropriate permissions to interact with the AWS services used by the application.
This reinforced the importance of configuring permissions according to the application's actual requirements rather than granting unnecessary access.
📚 What I Learned
This project changed how I think about AI applications.
My key takeaways were:
Connecting scheduled AWS events to Lambda.
Integrating Amazon Bedrock into a serverless workflow.
Retrieving external data through a weather API.
Persisting generated content in Amazon S3.
Building a lightweight frontend around AI-generated content.
Managing permissions and service boundaries with IAM.
Designing an application that works without continuous user interaction.
The biggest conceptual lesson was the difference between an application that can generate content and one that generates content on its own.
That small difference changes how the entire architecture needs to be designed.
🚀 What's Next?
Daily Sky Haiku currently focuses on one location and one daily poem, but there are several directions I could explore.
Future improvements include:
🌍 Supporting multiple cities around the world.
📚 Building a historical archive of previous haikus.
🎨 Adding weather-based visual themes.
🖼️ Generating artwork alongside each poem.
📅 Creating a calendar of previous poems.
✍️ Supporting different poetry styles.
📧 Sending daily email notifications.
📱 Developing a Progressive Web App.
🧠 Adding a memory system that allows the agent's writing style to evolve over time.
I'm particularly interested in the idea of a memory system that allows the agent to reference its previous poems and gradually develop a more consistent creative style.
🌐 Try Daily Sky Haiku
The application is publicly available, and the source code is available on GitHub.
Live Application: https://daily-sky-haiku-jyothish.netlify.app/
GitHub Repository: https://github.com/GunnerJyo/daily-sky-haiku
🏁 Final Thoughts
Daily Sky Haiku started with a simple question:
What if an AI creative app didn't wait for me to open it?
The result is a small autonomous creative agent that wakes up every morning, checks the weather, asks an AI model to interpret it creatively, and publishes a new poem.
By the time I visit the website, the poem is already there.
The application doesn't need me to press a button.
The sky provides the inspiration. AWS provides the automation. Nova Lite provides the creativity.
And every morning, Daily Sky Haiku writes something new.
Top comments (0)