通过 kwtSMS 网关发送单向短信,支持账户设置、默认发送者 ID 和国家前缀
kwtsms-monday — React 后台模板
作者 boxlinknet
kwtSMS for monday.com 是一个免费的 monday.com 市场应用,通过 kwtSMS 网关发送单向短信,面向在 monday 看板上维护联系人并希望直接发短信的 GCC 客户。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 3
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
条目视图标签页可从 Phone 列或指派人发送单条短信,并在时间线保留完整历史
看板菜单支持对选中条目批量发送,发送前预览逐条解析结果,并按批次去重
提供四条自动化触发器:条目创建、状态列变更、任意列变更、日期列前 T-N 天
模板占位符覆盖条目、列、用户、看板和日期时间,缺失值替换为空而不发送字面占位符
仪表盘部件展示余额、今日/本月发送量、7 天失败率及已送达/失败堆叠柱状图
模板详细介绍
该模板对应 monday.com 市场应用 kwtSMS for monday.com,通过 kwtSMS 网关发送单向短信,主要面向在 monday 看板上保存联系人、希望不切换到其他工具即可发短信的 GCC 客户。README 说明其运行时托管在 monday-code(Cloud Run),使用 Node 20、Express 4、React 18 + Vibe;凭据、配置、模板、日志和去重索引存放在 @mondaycom/apps-sdk 的 SecureStorage 中,并配有模块级进程内缓存(TTL 10–60 秒)。功能包括账户设置、条目视图标签页单发、右键条目快捷发送、看板菜单批量发送、看板视图自由发送、仪表盘部件,以及四条自动化触发器和一组模板占位符。README 也给出了本地开发命令、monday-code 部署命令和所需 OAuth 作用域。README 未提供界面截图说明、定价、多语言支持或除 GCC 之外的号码覆盖范围。
适合你的项目吗?
适用场景
- 在 monday 看板上管理 GCC 客户联系人,需要直接从条目发送短信通知
- 对选中的多条看板条目批量发送短信,并在发送前核对每个条目的号码解析
- 用自动化配方在条目创建、状态变更或日期临近时触发短信
- 在仪表盘上查看短信余额、发送量和失败率
适合人群
- 在 monday.com 上维护联系人并希望直接发短信的 GCC 客户
- 需要按条目或批量发送单向短信的 monday.com 团队
- 希望通过 monday 自动化配方触发短信的用户
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
本地开发需要 Node 20,以及 .env.test 中列出的 kwtSMS 和 monday 凭据(该文件被 gitignore)
- 2
构建命令:npm run build:server(tsc → dist/)、npm run build:client(vite → dist-client/)或 npm run build
- 3
测试命令:npm test 仅运行单元测试;npm run test:integration 会调用真实 kwtSMS API 并消耗点数
- 4
部署到 monday-code 使用 mapps code:push -i <draft-version-id>
- 5
应用需要 boards:read、boards:write、notifications:write、users:read、updates:write 作用域
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- 本地开发需要 Node 20,以及 .env.test 中列出的 kwtSMS 和 monday 凭据(该文件被 gitignore),即需要自备 kwtSMS 与 monday 账号凭据。
- 集成测试会调用真实 kwtSMS API 并消耗点数,可能产生短信费用。
- 部署到 monday-code 需使用 mapps code:push -i <draft-version-id>,依赖 monday-code 托管环境。
- 运行时托管在 monday-code(Cloud Run),属于外部托管服务。
- 凭据、配置、模板、日志和去重索引存放在 @mondaycom/apps-sdk 的 SecureStorage 中,依赖 monday 平台存储。
- 需要 boards:read 作用域以读取列值、条目和看板。
- 需要 boards:write 作用域以在发送后写入状态列。
- 需要 notifications:write 作用域以在余额为零或网关离线时发送应用内通知。
- 需要 users:read 作用域以将条目指派人解析为其资料电话。
- 需要 updates:write 作用域以从配方发布时间线更新。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
Requires Node 20 and the kwtSMS + monday credentials listed in `.env.test` (gitignored).
README 原文
npm run test:integration # hits real kwtSMS API; consumes points
README 原文
For deployment onto monday-code, `mapps code:push -i <draft-version-id>`.
README 原文
- **Runtime**: hosted on monday-code (Cloud Run). Node 20, Express 4, React 18 + Vibe.
README 原文
- **Storage**: `SecureStorage` from `@mondaycom/apps-sdk` for credentials, config, templates, logs, and dedup indexes. Module-level in-process cache (10-60s TTL) fronts every read to keep the warm path fast.
README 原文
- `boards:read`: read column values, items, boards for placeholder and phone resolution
README 原文
- `boards:write`: write status column after a send
README 原文
- `notifications:write`: post in-app bell notifications on zero balance / gateway offline
README 原文
- `users:read`: resolve assigned People on items to their profile phone
README 原文
https://github.com/boxlinknet/kwtsms-monday/blob/main/LICENSEhttps://github.com/boxlinknet/kwtsms-monday/blob/main/README.md- `updates:write`: post timeline updates from recipes
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-15。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 80 / 100
- 技术栈
- React
- 网站类型
- 后台
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-04-17
- 截图检查日期
- 2026-10-15
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 React。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: codex-user-requested-batch-review-20261017 · 2026-10-16
查看当时使用的来源资料
SHA-256: 2e96c127dd2cb635657ae461e392ce3e33bb08d6ba4db53405c197853c3a0b36
2026-10-15T06:43:11.034Z
来源文件 / 仓库# kwtSMS for monday.com
[](https://monday.com/marketplace)
[](https://nodejs.org/)
[](https://www.typescriptlang.org/)
[](https://react.dev/)
[](https://expressjs.com/)
[](https://jestjs.io/)
[](LICENSE)
A free monday.com marketplace app that sends one-way SMS through the kwtSMS gateway. Built for GCC customers who keep contacts on monday boards and want to text them without bouncing to a separate tool.
## About kwtSMS
[kwtSMS](https://www.kwtsms.com) is a Kuwait-based SMS gateway operating since 2007, offering Bulk SMS, an SMS API, OTP SMS, Reminder SMS, and sender IDs. Proudly made in Kuwait.
## Features
- **Account Settings**: login with kwtSMS credentials, set default sender ID / country prefix, manage templates, inspect delivery logs, configure bell notifications.
- **Item View tab**: send a single SMS from any item using Phone columns or assigned People on the item. Full per-item history on the timeline.
- **Right-click item action**: quick single-item send from the context menu with "From this item / Custom number" modes.
- **Bulk send**: board menu action over selected items: pick a phone source once (Phone column or People column), preview per-item resolution, send to many with per-batch dedup.
- **Board view**: free-form quick send to arbitrary numbers with recent-messages log scoped to the board.
- **Dashboard widget**: balance, sent today, sent this month, 7-day failure rate + stacked delivered/failed bar chart.
- **Integration recipes (automation)**: four triggers:
- When an item is created
- When a status column changes to a value
- When any column changes
- T-N days before a date column
- **Template placeholders**: `{item.name}`, `{item.id}`, `{item.url}`, `{item.group}`, `{item.created_at}`, `{item.updated_at}`, `{item.creator_name}`, `{item.creator_email}`, `{column.<Title>}` (case-insensitive), `{user.name}`, `{user.email}`, `{user.phone}`, `{user.title}`, `{user.location}`, `{board.name}`, `{board.url}`, `{date}`, `{time}`. Missing values substitute to empty: never ship a literal `{...}` in an SMS.
## Architecture
- **Runtime**: hosted on monday-code (Cloud Run). Node 20, Express 4, React 18 + Vibe.
- **Storage**: `SecureStorage` from `@mondaycom/apps-sdk` for credentials, config, templates, logs, and dedup indexes. Module-level in-process cache (10-60s TTL) fronts every read to keep the warm path fast.
- **Cold-start mitigation**: Express awaits `SecureStorage` GCP-identity warmup before opening the port; a 2-minute keep-alive refreshes the auth token before its 3-minute TTL; a `/api/prewarm` GET endpoint is hit by every iframe on mount so POSTs (non-idempotent) never race a cold instance.
- **Phone normalisation**: GCC-aware with `libphonenumber-js`: accepts bare national, `00`-prefixed, `+`-prefixed, Arabic-Indic and Persian digits, leading zero trim, first-valid-match fallback across coverage countries.
- **Dedup**: per-batch only (in-memory `Set<string>` keyed by phone + cleaned body + sender). No time window, no persisted deduplication: two manual sends to the same number minutes apart always go through.
## Local development
Requires Node 20 and the kwtSMS + monday credentials listed in `.env.test` (gitignored).
```bash
npm install
npm run build:server # tsc → dist/
npm run build:client # vite → dist-client/
npm run build # both
npm test # unit only
npm run test:integration # hits real kwtSMS API; consumes points
```
For deployment onto monday-code, `mapps code:push -i <draft-version-id>`.
## Scopes
- `boards:read`: read column values, items, boards for placeholder and phone resolution
- `boards:write`: write status column after a send
- `notifications:write`: post in-app bell notifications on zero balance / gateway offline
- `users:read`: resolve assigned People on items to their profile phone
- `updates:write`: post timeline updates from recipes
## Support
<https://www.kwtsms.com/support.html>
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。
ant-design-pro
Ant Design Pro 是 Ant Design 官方推出的企业级中后台前端脚手架,基于 React 19、Umi Max 4 和 antd 6 构建,内置 TypeScript 支持。
React · 后台

coreui-free-react-admin-template
Free React Admin & Dashboard Template Built for AI-Assisted Development
React · 后台

fastapi-react
fastapi-react 是一个基于 Cookiecutter 的模板,用于快速搭建 FastAPI 与 React(TypeScript)的全栈项目。
React · 后台

react-antd-admin-template
一个基于React+Antd的后台管理模版,在线预览https://nlrx-wjc.github.io/react-antd-admin-template/
React · 后台

react-saas-template
🌊 Template for building an SaaS / admin website using React + Material-UI
React · 后台

react-material-admin
☄️React Material Admin is a React template built with Material-UI
React · 后台
