Base44 public-app source adapter — developer preview
Website translation & localization for Base44 — Platform guide
Tested on our published Northline Fieldguide, not every Base44 app. This is reviewed React source, not a marketplace app or an iframe widget. Start on an owned public test app; ask support before paying specifically for this preview.
Developer integration
Connect Base44 without downloading files
Use one prepared message in the Base44 builder. GoLocal includes the integration code and your public project key; you do not unpack an archive or edit React files yourself.
- Create a GoLocal project for your exact published domain and select Base44. Confirm the original interface language.
- In the project’s connection panel, copy the complete setup message and paste it into your own Base44 chat. The code is already included. Generation uses your normal Base44 credits.
- Review the builder’s changes, then click Publish and open the published site. Change language and check that typing and saved client names stay unchanged.
Public websites only in this preview. If the builder cannot separate private data safely, stop and ask support. This is not an automatic installation or a verified private-app integration.
Manual corrections and reusable cache
In Translation Editor choose the exact project and en→fr pair. Save Translation Lab → Laboratoire de traduction as manual; all three eligible demo instances update by bundle polling without reload. Polling is asynchronous, not instant push; offline/background tabs may wait. Excluded text stays excluded. Previously requested phrases reuse cache on warm visits; a new FAQ answer or counter can legitimately need its first translation. Review terminology—an Arabic fallback material-sense error remains unresolved.
For developers: source files, ZIP and technical details
GoLocal! Website Translation & Localization · 0.1.1-preview · runtime 1.3.2 · 2026-10-16
1. Create the right project
Sign in to GoLocal → New Project → Base44. Register the exact published host, plus only the owned preview domains you use. Set the original interface language to the authored UI language, for example English—not the visitor’s French or the language of client records. Review widget languages and service limits. Use only this project’s public browser key; never a Base44 token, provider or database secret. Domain restrictions help, but Origin is not administrative authentication.
2. Choose an allowed editing path
Unzip the package and read README.txt. Use the official source-generation chat with ai-editor-prompt.txt AND the supplied helper/provider files. Review the resulting diff. In our account, manual Code editing and ZIP export required a paid Base44 plan; source generation used existing credits. Check your own entitlements. Do not bypass a quota or buy an upgrade just to follow this recipe.
3. Keep a strict public boundary
Keep the two source files together; merge public-layout-example.jsx into the existing PUBLIC shell. Mount one provider after committed public content. Exactly one #golocal-public contains authored navigation, headings and public pages only. Keep private routes and portal hosts outside it. Exclude saved customer names/descriptions before collection with data-user-content or data-gl-private. Exclude technical references with data-gl-record-id. Never add a generic body-wide script or replace SDK auth gates/router.
// Merge into your EXISTING PUBLIC shell; copy both supplied source files first.
import GoLocalPublicProvider from './integrations/GoLocalPublicProvider.jsx';
// Exactly one #golocal-public wraps only authored public content.
// Private routes/portals stay outside. Do not replace your router/auth gates.
// Mount once after the committed public DOM:
<GoLocalPublicProvider projectKey="YOUR_PROJECT_KEY" />
// Disable: remove this import/mount, rebuild, Publish and fully reload.
// The adapter pins runtime 1.3.2 + SRI; do not add another script.
<span>Source name</span>
<span data-user-content translate="no">Travail à domicile</span>
<div id="golocal-private-host" data-gl-private translate="no" />4. Filter by identity, not translated captions
Our demo keeps category objects and record IDs stable: objects and nf-object-01 do not become translated strings. The visitor sees Objets and La Bouilloire n°4. Its own public search matches bouilloire without rewriting the input and returns that same record. This is application search logic, not automatic reverse translation for all Base44 inputs. Bubble’s GoLocal Query element is not a Base44 component.
- en
- Objects · The Kettle No. 4
- fr
- Objets · La Bouilloire n°4
- ID / category
nf-object-01 / objects- Input → result
bouilloire → nf-object-01
6. Publish, test and disable
Compile, review and explicitly Publish, then reload the actual published URL—not just the editor sandbox. Check one root, one loader/widget, runtime 1.3.2 and its SRI. Test accented typing, saved names, native filters, SPA routes, delayed content, manual edits and a warm revisit. To disable, remove only the provider import/mount, rebuild, publish and fully reload; verify no loader/widget or service request. Removing a script tag is not hot-uninstall. Restore your reviewed layout from version history to re-enable.
7. Scope, costs and remaining checks
The source adapter is free; GoLocal SaaS plans and Base44 hosting/code access are separate. Removal neither cancels billing nor deletes translations. Private SDK-auth initial entry, delayed auth boundaries, independent accounts, stricter CSP, full accessibility, physical devices and broad RTL still need acceptance. The lab’s private panel is not authentication. Client-side translation does not create indexed localized URLs, translate checkout/email or guarantee rankings. Do not run two translators on native-localized content.
Security note: the native scanner showed an exposed-secret classification while its explanation said SRI is a hash and no hardcoded secrets were found. The warning was retained, not dismissed. This is not a clean-scan certification; review your app’s report without disabling SRI or modifying SDK auth blindly.
Simple, transparent pricing
All plans include unlimited translation words. No hidden fees.
Starter
Unlimited translation words
- ✓Unlimited translation words
- ✓Unlimited languages
- ✓Widget
- ✓1 project
- ✓30K MAU/month
- ✓1 external DB connection
- ✓Translation editor
- ✓Email support
Pro
Unlimited translation words
- ✓Unlimited translation words
- ✓Unlimited languages
- ✓Widget
- ✓1 project
- ✓150K MAU/month
- ✓3 external DB connections
- ✓Glossary
- ✓Priority support
Business
Unlimited translation words
- ✓Unlimited translation words
- ✓Unlimited languages
- ✓Widget
- ✓2 projects (2 domains)
- ✓1M MAU/month
- ✓10 external DB connections
- ✓Advanced analytics
- ✓Slack support
All plans include a 5-day free trial. Overage: $3 per 10K MAU above the limit.