new-term-radar
Daily radar for new AI terms: names of new models, products and repos, caught on X, Hugging Face, GitHub and sitemaps before keyword tools list them.
翻译准备中
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证🧭 Release Compass client SDK
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Embed Release Compass changelogs and feature/bugfix boards in your product.
| Package | Use |
|---|---|
@techtrail/release-compass-core | Typed HTTP client (public + server) |
@techtrail/release-compass-react | Public React embeds (no tokens) |
@techtrail/release-compass-angular | Public Angular embeds (no tokens) |
@techtrail/release-compass-next | Next.js server helpers (API keys, private boards, voting) |
@techtrail/release-compass-vue | Soon |
rc_live_…) on your backend only. Use @techtrail/release-compass-core’s createServerClient or @techtrail/release-compass-next. Never put the key in NEXT_PUBLIC_* or a React/Angular prop.Default API base: https://api.release-compass.app/api/v1.
Public paths use owner + project:
/api/v1/public/changelogs/{owner}/{project}.
The owner segment is a user username or organization slug.
Project admins hide changes (admin, infrastructure, internal, dependency, and similar) under Settings → Changelog filters in the Release Compass dashboard. The public changelog endpoint applies those filters on the server, so the packages return only visible entries and need no filtering of their own. The client packages cannot change filters: they use API keys, and filter changes require a signed-in project admin.
pnpm add @techtrail/release-compass-react
import {
ReleaseCompassProvider,
Changelog,
RequestBoard,
} from "@techtrail/release-compass-react";
export function ProductUpdates() {
return (
<ReleaseCompassProvider ownerSlug="acme" projectSlug="signals">
<Changelog />
<RequestBoard />
</ReleaseCompassProvider>
);
}
Markup is headless (data-rc attributes). Style it in your app.
pnpm add @techtrail/release-compass-angular
import {
provideReleaseCompass,
RcChangelogComponent,
RcRequestBoardComponent,
} from "@techtrail/release-compass-angular";
bootstrapApplication(AppComponent, {
providers: [
provideReleaseCompass({ ownerSlug: "acme", projectSlug: "signals" }),
],
});
<rc-changelog />
<rc-request-board />
pnpm add @techtrail/release-compass-next
Set server env (never NEXT_PUBLIC_):
RELEASE_COMPASS_API_KEY=rc_live_…
# Either:
RELEASE_COMPASS_OWNER_SLUG=acme
RELEASE_COMPASS_PROJECT_SLUG=signals
# Or combined:
# RELEASE_COMPASS_PROJECT=acme/signals
// app/api/requests/[id]/vote/route.ts
import { voteRequest } from "@techtrail/release-compass-next";
export async function POST(
request: Request,
context: { params: Promise<{ id: string }> },
) {
const { id } = await context.params;
const { voter } = (await request.json()) as { voter: string };
const updated = await voteRequest(id, voter);
return Response.json(updated);
}
Private boards:
import { getRequestBoard } from "@techtrail/release-compass-next";
const board = await getRequestBoard({}); // uses RELEASE_COMPASS_API_KEY + owner/project env
import {
createPublicClient,
createServerClient,
} from "@techtrail/release-compass-core";
const publicClient = createPublicClient({
ownerSlug: "acme",
projectSlug: "signals",
});
await publicClient.getChangelog();
// Server only — do not import into browser code
const server = createServerClient({
ownerSlug: "acme",
projectSlug: "signals",
apiKey: process.env.RELEASE_COMPASS_API_KEY!,
});
await server.voteRequest("request-id", "user-42");
pnpm install
pnpm build
pnpm test
pnpm typecheck
Requires Node 24+ and pnpm 10+.
Public packages publish from GitHub Actions with provenance and staged publishing after the first version exists (trusted publishing).
vX.Y.Z (e.g. git tag v0.1.0 && git push origin v0.1.0).publish.yml builds, then for each package:
npm publish --access public (creates the package; stage cannot)npm stage publish (not live until you approve)npm stage list
npm stage approve <stage-id> --otp <code>
| Situation | What to use |
|---|---|
| First create (package name not on npm) | CI cannot supply a 2FA OTP. Either publish once locally with --otp, or use a temporary granular token with Bypass 2FA + publish as NPM_STAGE_TOKEN, then revoke Bypass 2FA |
| Later versions | Prefer Trusted Publisher with npm stage publish only; approve with 2FA (npm stage approve) |
Stage-only tokens and “Require 2FA / disallow tokens” are correct after the package exists — they will not create the first version from CI (EOTP).
pnpm install && pnpm build
# after aligning versions, for each package:
# --no-provenance: publishConfig.provenance is CI/OIDC-only (local → EUSAGE)
(cd packages/core && npm publish --access public --otp=123456 --no-provenance)
(cd packages/react && npm publish --access public --otp=123456 --no-provenance)
(cd packages/angular && npm publish --access public --otp=123456 --no-provenance)
(cd packages/next && npm publish --access public --otp=123456 --no-provenance)
Then configure Trusted Publisher on each package and use tags + stage for later releases (those get provenance from Actions).
Trusted Publisher (once the package exists on npmjs.com):
| Setting | Value |
|---|---|
| GitHub | org tech-trail-io · repo release-compass-clients · workflow publish.yml · environment npm |
| Allowed actions | Both publish + stage for bootstrap, then stage only if you want |
| Publishing access | Prefer Require 2FA and disallow tokens after OIDC works |
Create a GitHub Environment named npm on this repo (optional reviewers).