···11-# Discord Question of the Day delivered via webhook
11+# Discord Question of the Day
22+33+A Deno cron job that fetches questions from a Google Sheets endpoint and posts them sequentially to Discord via webhook. Uses Deno KV for state management to track question progression.
44+55+## Setup
66+77+0. Install [Deno](https://deno.com/), `git clone` the project and run `deno install` to install dependencies.
88+1. Create `.env` file for local development and fill in your values (see below)
99+2. Deploy to Deno Deploy or run locally
1010+1111+## Commands
1212+1313+```bash
1414+# Local testing (with optional date/index override)
1515+deno task dev
1616+deno task dev --d="2025-10-25" --i="12"
1717+1818+# Run locally with cron
1919+deno task run
2020+2121+# Deploy to Deno Deploy
2222+deno task deploy
2323+```
22433-This project fetches a JSON-ified list of questions from an endpoint, a Google Sheet in our case, and runs a cron job that will successively post the questions to a Discord webhook.
2525+## Necessary Environment Variables
42655-Idea by @meylemonade.bsky.social2727+- `SHEET_ENDPOINT` - JSON endpoint URL (Google Sheets, etc.)
2828+- `CRON_STRING` - Cron schedule expression
2929+- `DISCORD_WEBHOOK_URL` - Discord webhook URL
3030+- `SUGGESTION_FORM_URL` - Form to suggest new questions
3131+- `DENO_KV_DATABASE_ID` - Deno Deploy KV database ID (for local testing)
3232+- `DENO_KV_ACCESS_TOKEN` - Deno Deploy KV access token (for local testing)
3333+3434+---
3535+3636+*Idea by [@meylemonade.bsky.social](https://bsky.app/profile/meylemonade.bsky.social)*