Skip to content
localisyncDocs
Open panel

Landing site

The product website is a static Astro application. Its Home, Getting started, How it works, Pricing and FAQ pages do not require the API, database, identity service or an account. The Open panel link still requires the panel and its normal authentication services.

Use the repository’s pinned Node and pnpm versions. From the repository root:

Terminal window
pnpm install --frozen-lockfile
pnpm dev:landing

Open http://127.0.0.1:4320. The panel uses port 3010 and documentation uses port 4321. To inspect the actual static output instead of the development server:

Terminal window
pnpm build:landing
pnpm preview:landing

Stop the development server before starting preview on the same port. The output is apps/landing/dist. Build all files before replacing a running deployment; do not mix HTML from one build with another build’s hashed assets. Roll back by serving the preceding complete image or static output, with its original origin configuration.

Pass these environment variables to the build process (export them in the shell or use Docker build arguments). The application does not automatically load the root application’s private .env file.

Variable Preview default Behavior
LANDING_ENV preview production enables indexing and requires explicit public HTTPS origins.
LANDING_SITE_URL http://127.0.0.1:4320 Canonical URLs, sharing metadata and sitemap.
LANDING_PANEL_URL http://127.0.0.1:3010 Open panel destination.
LANDING_DOCS_URL http://127.0.0.1:4321 Documentation destinations.

Origins must not contain credentials, paths, queries or fragments. HTTP is allowed only on loopback in preview. A production build rejects missing or loopback origins. Changing these settings requires rebuilding. Preview emits noindex, nofollow and disallows crawlers in robots.txt. Do not use robots.txt as an access-control mechanism.

Pricing links to info@localisync.com through the visitor’s email application. The website has no contact submission endpoint or checkout. Appearance storage requires Preferences permission. Optional Google Analytics requires a reviewed deployment configuration and Analytics permission. See Website privacy setup.

Build the independent image from the repository root:

Terminal window
docker build -f apps/landing/Dockerfile -t localisync-landing:local .
docker run --rm -p 127.0.0.1:4320:8080 localisync-landing:local

The image serves port 8080 as a non-root user. HTML is revalidated; hashed Astro assets are immutable-cacheable. A reverse proxy, public DNS and production TLS must be configured and validated separately. Pass the three public origins and LANDING_ENV=production as build arguments only when the deployment’s actual addresses have been assigned.

Every feature or behavior change includes a landing impact review. Update affected summaries, SDK publication status, starting steps, FAQ, pricing links and product screenshots together with the relevant guides. Detailed instructions stay in the documentation; landing pages summarize them and link here. If the change has no landing impact, record that in delivery notes.

Product screenshots are real interface captures with clearly labelled example content. Maintainers regenerate them through the opt-in pnpm landing:capture command in the isolated E2E environment, review both themes, and verify that no account identifiers or secrets appear. This capture command is separate from ordinary static builds.

Terminal window
pnpm landing:check
pnpm test:landing
pnpm brand:check
  • Panel or docs links fail: start those services or correct their build-time origins.
  • Missing CSS or images after updating: verify a complete build was deployed; reload HTML and check that its hashed assets exist. Do not delete customer browser storage.
  • Production configuration rejected: supply all three non-loopback HTTPS origins.
  • Theme preference is not retained: browser policy may block storage; theme switching remains available for the current page.
  • Product images need updating: run the dedicated capture flow with isolated services, then review the images. Do not capture a real customer’s session.

Cookie preferences

Your choice applies to localisync.com and docs.localisync.com. You can change it at any time using Cookie settings.