Coo coo! I'm Pattern Pigeon–your feathered friend here to help you understand software architecture patterns like Strategy, Composite, and Observer. I might ruffle in a few pigeon facts too. What are you curious about today?
Pattern Pigeon is a deterministic1 conversational assistant built with Google Cloud's Dialogflow CX to teach the Strategy, Composite, and Observer design patterns.
Curious how Pattern Pigeon flaps its wings?
👉 Check out the live demo
Follow the instructions from Google Cloud to set up GitHub integration:
- If you're contributing: fork this repository.
- Create a fine-grained personal access token from GitHub. (Read-only is fine if you're not contributing.)
- Create a secret for the token in the Dialogflow CX console.
- Configure Git export/restore integration for your Dialogflow CX agent.
- Pull the agent from GitHub!
- If contributing, push your changes and rebase or amend any unintended edits.
⚠️ Note: Dialogflow CX overwrites the entire branch on push from the console, so make sure to:- Commit only intended changes.
- Compare changes made in the dashboard vs. those you want to keep.
- Optionally, make edits in a local text editor and manage them manually.
The pigeon photo used was taken by Muhammad Mahdi Karim/https://micro2macro.net. The image above is licensed under the Free Art License. (Learn more). This project is not endorsed or connected to the Apache Software Foundation.
This project is licensed under the Apache License, Version 2.0, which you can read here.
Footnotes
-
All responses are generated by the agent, without generative input from a large language model (LLM). However, Flows use language models for understanding end-user intention, which may not be completely deterministic. ↩