Skip to content

Conversation

@ellyxir
Copy link
Contributor

@ellyxir ellyxir commented Sep 25, 2025

Summary by cubic

Adds a new Cheeseboard pattern that fetches the pizza schedule via Toolshed’s web-read API and shows a simple date-and-pizza list in the UI. Parses the page content to extract daily pizza descriptions.

  • New Features
    • New pattern: packages/patterns/cheeseboard.tsx.
    • Uses fetchData to POST to /api/agent-tools/web-read for the Cheeseboard schedule.
    • Extracts entries with a date regex and builds a reactive pizza list via lift, rendered as a UL.

Comment on lines +92 to +96
const createPizzaListCell = lift<{ result: WebReadResult }, CheeseboardEntry[]>(
({ result }) => {
return extractPizzas(result?.content ?? "");
},
);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RE: your comments on naming in standup, I find it a bit confusing to write create in a lifted function that is reactively bound like this, since it doesn't just run once. Maybe const pizzaList = toPizzaList({ result }) would be idiomatic (kinda FP inspired)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i sort of had that before. i felt like "cell" means it runs more than once, but i see that it could be confusing. hm honestly i sat on this a bit.

Copy link
Contributor Author

@ellyxir ellyxir Sep 25, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

toPizzaListLift? lol

@ellyxir ellyxir merged commit e204bd4 into main Sep 26, 2025
7 checks passed
@ellyxir ellyxir deleted the ellyse/webread-pattern branch September 26, 2025 22:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants