Skip to main content
Small but useful tips for common tasks when working with Latch.

Removing a Page

To remove an entire page from your website:
1

Delete the page folder

Find the page folder in app/ and delete it:
2

Remove navigation links

Search your codebase for links to the removed page and remove them.Common places to check:
  • components/layout/Footer.tsx - Footer links
  • components/layout/Header.tsx - Navigation menu
  • config/pages/*.ts - Page configuration files
Quick search: Press Ctrl + Shift + F and search for:
Replace jobs with the page you removed.
Make sure no other pages link to the removed page, or users will see 404 errors!

Removing a Component

To remove a component from a page (like Sale Banner, Discord Banner, etc.):
1

Find the page file

Open the page’s page.tsx file. For homepage:
2

Remove the component

Find the component and delete both:
  1. The import statement at the top
  2. The component tag in the JSX
Example: Removing SaleBanner from homepage
Common components you might remove:

Adding External Images

When you add an image from an external URL, you may see this error:
Next.js blocks external images for security. You need to whitelist the image domain.

How to Fix

1

Open next.config.ts

Find the file at the root of your project.
2

Add the image domain

Find the remotePatterns array and add your domain:
3

Restart the dev server

Stop the server (Ctrl + C) and restart:

Full Example

If your image URL is:
Add this to next.config.ts:

Common Image Domains

Use local images in public/assets/ to avoid needing to configure external domains. Reference them as /assets/your-image.png.

Using Local Images

For images you control, store them locally:
1

Add image to public folder

2

Reference in code

Benefits of local images:
  • No need to configure next.config.ts
  • Faster loading (served from your domain)
  • Won’t break if external host goes down
  • Better for SEO

Translating Your Site

Latch does not ship with a built-in i18n system. Instead, all display text lives inside the config/ directory as TypeScript files. To translate the site into any language, edit the values in those files.
1

Locate the config file for the page you want to translate

Every page in app/ has a matching config file:
2

Edit the string values

Open the config file and replace the English text with your translation. Only change the values β€” leave the property keys (left side) unchanged:
3

Translate UI text inside components (if needed)

Some labels, button text, and helper strings are hardcoded inside component files under components/. If you cannot find a piece of text in config/, search for it globally:
  1. Press Ctrl + Shift + F (Windows) or Cmd + Shift + F (Mac)
  2. Type the exact text you see on the page
  3. Open the file that contains it and update the string
4

Translate SEO metadata

Page titles and meta descriptions are separately controlled in config/seo.ts. Make sure to translate those too so search engines index your site in the correct language.
To bulk-find all English strings at once, open Ctrl + Shift + H, set β€œfiles to include” to config/**/*.ts, and search/replace term by term.

Quick Find & Replace

Use VS Code’s global search to find and replace across all files: Keyboard shortcut: Ctrl + Shift + H (Windows/Linux) or Cmd + Shift + H (Mac) Common replacements when setting up:
In the β€œfiles to include” field, enter config/**/*.ts to limit search to config files only.

All hosting plans (VPS, Web Hosting, Dedicated) support clickable purchase links via the orderUrl field.
1

Open your hosting config file

Navigate to the config file for the hosting type you want to edit:
  • VPS: config/hosting/vps.ts
  • Web Hosting: config/hosting/web-hosting.ts
  • Dedicated: config/hosting/dedicated.ts
2

Add orderUrl to each plan

Find the plans array and add orderUrl to each plan object:
3

Customize the Contact Sales section

Each hosting page also has a customizable β€œContact Sales” section at the bottom:
Use # as a placeholder URL during development, then replace with your actual billing/purchase URLs before going live.

FAQ

Common questions answered

Examples

Code examples and snippets

Sale Banner

Configure promotional banners

Configuration Basics

All configuration options