This is a submission for Weekend Challenge: Generosity Edition What I Built I'm currently volunteering on the Communications team at a sustainability nonprofit, GreenHomeNYC.
One reason I volunteered was to keeps up with initiatives that drive a more sustainable lifestyle.
Volunteers and board members communicate through Slack but on particular channel inthenews could use more life.
I created a bot that will post a digest of articles on a set schedule.
Demo Hopefully this is enough of a demo my project is a cron job.
Code kelsey-d / sustainability-reporter Slack bot posting the latest in sustainability news Sustainability News Digest A Slack bot that posts a daily digest of sustainability news, summarized by Google AI.
What It Does Fetches the latest sustainability news from a free News API Uses Google AI (Gemini) to generate a concise, insightful summary Posts the digest to a Slack channel via webhook Runs automatically on a schedule using GitHub Actions Tech Stack Language: TypeScript Runtime: Node.js AI: Google Gemini News Source: GNews API Slack: Incoming Webhooks Automation: GitHub Actions (scheduled cron) Setup Instructions
1.
Clone the repository
2.
Set up environment variables Create a file in the root of the project: Run on a Schedule (GitHub Actions) This repository includes a GitHub Actions workflow () that runs the bot daily.
To enable it: Fork this repository Add your secrets (, , ) in the repo Settings >… View on GitHub How I Built It I started this challenge at 6pm EDT on Sunday so I was pretty pressed for time.
I already had the idea to create a Slack bot but I didn't know how ridiculously easy it would be.
I had DeepSeek come up with a project timeline for me. ## Build Timeline Time (EDT) Duration Task 6:00 PM 30 min Setup & Key Procurement – Sign up for News API, create Slack App, get webhook URL 6:30 PM 1 hr Project Scaffolding & News Fetch – Initialize project, write script to fetch news 7:30 PM 15 min Break 7:45 PM 1.5 hrs Google AI Integration – Format news and generate AI summary 9:15 PM 15 min Break 9:30 PM 1 hr Slack Integration – Format and post digest to Slack 10:30 PM 15 min Break 10:45 PM 1.5 hrs Deploy & Automate – Push to GitHub, set up GitHub Action 12:15 AM 15 min Break 12:30 AM 1.5 hrs Polish & Documentation – Write README, clean up code 2:00 AM 59 min Final Submission Prep – Screenshot, write Dev.to post, submit 2:59 AM DEADLINE – Submit your project!
Did I follow the timeline to a T?
No, but I did go in this exact order.
I gathered up all the variable I needed (keys and urls) GNews, Gemini and Slack.
Prize Categories I'll attempt the Best Use of Google AI category.
There is a couple of more things to fine tune but I'm implementing the whole make it exist first and make it good later philosophy.
