Voicebar
A voice-first keyboard for Android that works alongside Gboard. Tap Voice, talk, and a tidy message lands in the box.
翻译准备中
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证KyNotes: end-to-end encrypted notes with text and canvas
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗KyNotes is a browser-based notebook for encrypted text, handwriting, attachments and tasks, with shared team notebooks. Content is decrypted in the browser; an administrator manages accounts and the service rather than reading people’s notes.
Start here: Standalone installation, deployment settings, SSO, complete recovery. Local administrator and everyday accounts work without KyIdentity. A complete backup needs both the sealed capsule and a separate ciphertext blob mirror.
KyNotes stores encrypted notes and attachments; browsers own content decryption.
See deployment for setup and configuration, including the COMPOSE_FILE
line a source build must set so docker compose never swaps in the published image.
See SSO setup and upgrade for session-aware logout and the required re-login/re-pairing of linked accounts after migration 0016.
Administrators can pin a recovery public key, pair KyRecovery, schedule backups, retain local sealed copies, download capsules and run synthetic restore drills. Capsules hold the database and deployment secrets, while ciphertext blobs require separate recovery. Read the restore runbook before relying on a backup.
To check that a release image came from this repository's release workflow, and to rebuild its binary to the same bytes, see verifying releases. The security argument as a whole is in the assurance case; key sizes and the optional strong-key profile are in docs/STRONG-CRYPTO.md.
TLS protects the public key received at pairing, the deposit token and receipts even though the capsule is sealed. Pin the suite public key by hand or compare its fingerprint out of band. A product process never holds recovery private keys or custodian shares.
Local plaintext maintenance commands are copy-data-dir --out and
restore-data-dir --in; they require a stopped service. The sealed recovery commands are
deposit, export-capsule --out, backup-drill, and restore --in --to (shares on stdin).
deposit and backup-drill also work while the server runs (docker exec); use the admin
UI for the other operations then.
Ciphertext blobs have their own mirror: configure KYNOTES_BLOB_TARGET, then use Admin
Mirror now, scheduled backups, or the offline mirror-blobs --config PATH command.
test-blob-target verifies connectivity; fetch-blobs restores missing/corrupt ciphertext
after capsule restore. See deployment for
S3, pinned SFTP, SMB and local-mount settings and restore for the order.
SFTP destinations need strong keys and modern negotiation; read the deployment guide before
upgrading an old target or selecting legacy SMB/NTLM compatibility.
GET /healthz is public ky.health/1 JSON. It returns 200 when startup is
ready and SQLite responds to a ping, or 503 when either check fails. The
shared handler caches each evaluation for five seconds and bounds each check
to two seconds. Its response exposes fixed check names and statuses, never
database errors or user data. GET /livez preserves the former alive-only
200 {"status":"ok"} response. GET /readyz retains its startup-readiness
response. A router created without a database checks startup only.
Use Go matching go.mod and Node 26 as pinned by CI. From the repository root:
npm ci --prefix web
npm test --prefix web
npm run build --prefix web
go build ./...
go vet ./...
go test -race -count=1 ./...
These checks are not the complete release gate. CI also runs browser regressions, fuzz checks, the Docker/installer probe and vulnerability checks; see the workflow. Browser fixtures do not prove a live KyIdentity rollout or complete recovery. Test the real blob mirror and actual capsule-plus-blob restore separately before relying on them.
KyNotes Server is released under the MIT License.