Skip to content

SeanJA239/LarkStack

 
 

Repository files navigation

English | 简体中文

LarkStack-Linear

Rust middleware that syncs Linear events to Lark / Feishu notifications.
Runs as a native server (Tokio) or a Cloudflare Worker (WASM).

Rust Version License


Features

  • Group notifications — Issue create / update posts an interactive card to a Lark group, color-coded by priority. Rapid-fire updates are debounced into a single message.
  • DM on assign — Assigning an issue sends a private message to the assignee's Lark account, matched by email.
  • Link previews — Paste a linear.app URL in Lark and it unfurls into a summary card via Linear's GraphQL API.
  • Webhook signature verification — HMAC-SHA256 for Linear, token verification for Lark.

Endpoints

Method Path Purpose
POST /webhook Linear webhook receiver
POST /lark/event Lark event callback (challenge + link preview)
GET /health Health check

Quick Start

export LINEAR_WEBHOOK_SECRET=your_secret
export LARK_WEBHOOK_URL=https://open.larksuite.com/open-apis/bot/v2/hook/xxx
cargo run

See Configuration for the full environment variable reference.

Deployment

Platform Guide
Railway / Docker docs/deploy-railway.md
Cloudflare Workers docs/deploy-cloudflare-workers.md

Local Development

  1. Create a Lark test group with a custom bot. Add a webhook in Linear.
  2. ngrok http 3000 to get a public URL.
  3. cargo run, point the Linear webhook to https://<NGROK_URL>/webhook.

License

MIT

About

A service that helps you to integrate Linear and Github into Lark

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Rust 91.4%
  • Shell 7.8%
  • Dockerfile 0.8%