Appearance
Getting started
Load your first translated string in ~15 minutes.
Closed beta (invite-only)
StringPush is in an invite-only closed beta — public self-serve signup may not be available yet. If you were invited:
- Open the accept invite link from your email (or from the StringPush team).
- Sign in at admin with the same email — platform magic link.
- Continue with Admin setup below.
Overview
- Create a project and application in admin.
- Add your browser origins (staging site +
localhostfor dev). - Verify each non-localhost origin before browser testing.
- Copy the runtime API key (shown once).
- Add keys and Publish staging.
- Wire
init()in your app (or run the sample app locally on localhost). - (Optional) Export locales to Git — CI
sync-pror overlay Ready for merge when linked in admin.
Choose your delivery path
| Your app | Path |
|---|---|
| SPA / client-heavy (no SEO requirement) | @stringpush/sdk only |
| Next.js / Nuxt / Remix SSR | @stringpush/node + browser SDK for overlay |
| Rails / Laravel / Phoenix / Django | Build your own HTTP client |
| Locale files in Git (Gettext, i18next) | Git sync (Studio) |
1. Admin setup
- Sign in at your admin URL (magic link or SSO).
- Projects → Create project.
- New application — under Allowed browser origins, add:
- Your staging origin (e.g.
staging.myapp.com) localhost:5173(or your dev server port) for local development
- Your staging origin (e.g.
- Create application — copy Application ID and runtime API key immediately.
- Verify origins — for each hostname that shows Verify required, click Verify, add the DNS TXT record (or HTTP file), then Check verification. See Verify a browser origin for step-by-step instructions.
- Keys → add keys (e.g.
common.greeting) → Publish staging.
TIP
localhost origins are active immediately. You can publish keys and test init() locally while DNS verification for your staging hostname propagates.
2. Try the SDK
Option A — your app or local dev
Call init() from a verified origin (your staging site or http://localhost:5173).
Option B — sample app locally
Run the sample app on localhost:5177 with localhost:5177 in your allowed origins.
Option C — hosted sample
Open the platform sample app (https://sample.platform.stringpush.com) to explore the UI. To load your strings there, use a verified origin that matches where the SDK runs — in practice, local dev (options A or B) is the fastest path for new applications.
3. Add to your app
bash
pnpm add @stringpush/sdkts
import { init, t } from "@stringpush/sdk";
await init({
applicationId: "<from admin>",
environment: "staging",
locale: "en",
apiKey: "trt_…",
apiBaseUrl: "https://api.platform.stringpush.com",
origin: window.location.origin,
onTranslationsUpdated: () => app.rerender(),
});
console.log(t("common.greeting"));
console.log(t("common.welcome", { name: "Ada" }));Framework guides: React · Vue · Angular · Next.js.
4. Before production
| Step | Action |
|---|---|
| Locales | Add every language you ship in admin |
| Keys | Publish staging first; promote when approved |
| Runtime | Set environment: "production" in init() |
| Domains | Add production origins and verify each one |
| Overlay | Keep in-context edit on staging unless production overlay is enabled |
| Releases | See Environment release for promote, hotfix, and back-sync |
Next
- Environment release — staging ↔ production workflows
- Deploy release — CI promote on app deploy
- Verify a browser origin — DNS, HTTP, troubleshooting
- Integration hub — pick your stack
- ICU interpolation —
{name}and plurals - Staging overlay — in-context editing
- Git sync — export locale files to your repo (CI or overlay Ready for merge)