Skip to content

Getting Started

Prerequisites

Installation

bash
git clone https://github.com/ReCloudStudio/WebHooker.git
cd WebHooker
npm install

Local Development

1. Configure Secrets

Copy the example env file and fill in your secrets:

bash
cp .env.example .dev.vars

Edit .dev.vars with your actual values:

bash
GITHUB_WEBHOOK_SECRET=your-webhook-secret
GITHUB_APP_ID=your-app-id
GITHUB_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----"
GITHUB_CLIENT_ID=your-client-id
GITHUB_CLIENT_SECRET=your-client-secret
DISCORD_TOKEN=your-bot-token
DISCORD_CHANNEL_ID=your-channel-id
BASE_URL=http://localhost:8787

WARNING

.dev.vars is gitignored and contains secrets. Never commit it.

2. Start Dev Server

bash
npm run dev

This starts a local Miniflare environment at http://localhost:8787.

3. Verify

bash
curl http://localhost:8787/health
# → {"status":"ok"}

Available Scripts

ScriptDescription
npm run devStart local dev server (wrangler)
npm run deployDeploy to Cloudflare
npm run typecheckTypeScript type checking
npm run lintESLint
npm run lint:mdMarkdownlint
npm run formatFormat with Prettier
npm run format:checkCheck Prettier formatting
npm run docs:devStart docs dev server
npm run docs:buildBuild docs site

Released under the MIT License.