Collect feedback.
Ship to GitHub.
Wafir is a powerful, lightweight feedback and bug reporting widget that bridges user feedback directly to your GitHub workflow. Easy to embed, simple to configure.
Why Wafir?
Everything you need for seamless feedback collection
Easy to Use
Drop-in widget for any web app. Works natively as a Web Component, with React and Vue wrappers available.
Open Source
AGPLv3 licensed. Self-host the bridge or use our free service. Full control over your data.
GitHub Native
Issues go directly to your GitHub repo. Configure via a simple YAML file in your repo.
Rich Context
Capture screenshots, browser info, and console logs automatically for better debugging.
Fully Customizable
Custom CSS, configurable forms, and slot-based triggers. Make it match your brand.
Framework Agnostic
Built as a Lit Web Component for direct browser use, plus React and Vue wrappers.
Quick Start
Get up and running in three steps
Install the widget
npm install wafir
# OR just load wafir.browser.js from your host (e.g. S3 or your CDN) Add to your app (vanilla Web Component)
<script type="module" src="https://wafir-all.s3.us-east-2.amazonaws.com/wafir/latest/wafir.js"></script>
<wafir-widget
target-type="string" # github/issues | github/project
target="string" # e.g., owner/repo or owner/projectNum
auth-ref="string" # e.g., GitHub installation ID
></wafir-widget> Configure your forms
# public/wafir.yaml
title: "Report a Bug"
targets:
- id: default
type: github/issues
target: your-username/your-repo
authRef: "YOUR_INSTALLATION_ID" # Replace with your GitHub App installation ID
# Widget forms - only showing issue form for basic bug reporting
forms:
- id: issue
label: Issue
icon: bug
fields:
- id: title
type: input
attributes:
label: "Issue Title"
validations:
required: true
- id: description
type: textarea
attributes:
label: "Description"
validations:
required: true Built With
Modern, reliable technologies