A Google Chat add-on for creating polls and making quick decisions within Google Chat. Built with TypeScript and deployed to Google Cloud Functions.
Installed over 1 million times — the #1 poll app on the Google Workspace Marketplace.
Landing page: https://absolute-poll.yaskur.com/
- Create polls with multiple choices
- Single or multiple choice voting (configurable vote limit)
- Anonymous voting option
- Add more options after poll is created
- Close polls manually or on a schedule with auto-close
- Reminder notifications before auto-close
- Permission control (creator-only or anyone can close)
- No database required — poll state is stored directly in the chat message
- Duplicate Poll
- Save state to database
- Schedule poll
- Deno or Cloudflare worker support
- Node.js 22+
- Yarn
- Google Cloud SDK (for deployment)
yarn installyarn start # Start local dev server via functions-framework
yarn build # Compile TypeScript
yarn test # Run tests with coverage
yarn eslint . # LintCreate a .env.yaml file with:
FUNCTION_REGION: asia-southeast1
GCP_PROJECT: your-project-id
QUEUE_NAME: your-queue-nameyarn deploy # Build + deploy to GCP with env vars from .env.yaml
yarn release # Build + deploy to GCP (production, uses env vars already set in GCP)- Since poll state is stored in the chat message, there is a maximum data size limit. See this SO question for details.
- Currently only tested on GCP Cloud Functions.
You can test the JSON files in the tests/json folder at https://gw-card-builder.web.app/ to preview the card output.
MIT

