Navigation
ℹ️

Infrastructure Update

Luigi's Box is updating its primary domain recommendations.

Our services are fully operational across both .com and .tech domains. To ensure the highest level of redundancy, we now recommend using the .tech domain for all integrations.

1. API Base URLs

Please update the base URLs for your specific services:

A. Search, Autocomplete, Product Listing, and Recommendations
SUPPORTED https://live.luigisbox.com
RECOMMENDED https://live.luigisbox.tech
B. Analytics
SUPPORTED https://api.luigisbox.com
RECOMMENDED https://api.luigisbox.tech

2. Frontend Script

Both script sources are valid, but we encourage updating to the .tech domain for consistency:

Supported
<script async src="https://scripts.luigisbox.com/LBX-123.js"></script>
Recommended
<script async src="https://scripts.luigisbox.tech/LBX-123.js"></script>

3. CSP & Firewalls

To support the recommended configuration, please ensure your Content Security Policy (CSP) includes the following:

script-src https://scripts.luigisbox.tech;
connect-src https://live.luigisbox.tech https://api.luigisbox.tech;

Support: support@luigisbox.net UPDATED: 01/07/2026

HTML templates

This demo shows a basic search example with a custom HTML template for the product tile. You can customize all of the aspects of search appearance by providing custom templates for individual components. See Search.js templates documentation for more details.

The visual shown here was applied by providing this piece of script. No explicit configuration is needed, except using the correct id attribute by which search.js finds template.

<script>
function LBInitSearch() {
  Luigis.Search({
    TrackerId: '179075-204259',
    Locale: 'en',
    Theme: 'boo',
    Size: 20,
    Facets: ['brand', 'category', 'price_amount'],
    DefaultFilters: {
       type: 'product'
    },
    QuicksearchTypes: ['category', 'brand'],
    UrlParamName: {
      QUERY: 'q',
    }
  }, '#q', '#search-ui')
}
</script>

<script src="https://cdn.luigisbox.com/search.js" async onload="LBInitSearch()"></script>

<script type="text/x-template" id="template-result-default">
<div class="col-md-4 mb-4">
  <a :href="url">
    <h5>{{ attributes.title }}</h5>
  </a>
  <img class="img-fluid" :src="attributes.image_link"/>
  <a class="btn btn-primary" :href="url">See more</a>
</div>
</script>

Previous example
Styling
Search examples

Try it out →

Next example
Reactivity
Search examples

Try it out →