developers.edufacturing.com

Our manufacturing engines, on your site

One script tag and one custom element. The 3D Print Advisor asks six questions and returns three machines that actually fit — scored against the same rules core that powers our Shopify apps, our APIs and our books. No iframe to style around, no account for your visitors, no data leaving the page except the six answers.

<script> + custom element Publishable key, domain allow-list Shadow DOM, themable with CSS variables EN & BG
Get a key Read the docs

embed.js

8.9 KBno dependencies

One file, no framework, no bundler. The advisor UI and the rules engine load lazily, only when a widget is actually on the page.

Free tier

100calls / month

Enough to put the advisor on a shop and see whether it earns its place. No card to start.

Cited, not invented

4,128rules

Every recommendation carries the rule ids behind it. Where no rule covers a pairing, the widget says so instead of guessing.

01Try it — this is the real widget

The element below runs against this portal with a demo key that is allow-listed for this domain only. Copy it to your own page and it will refuse to load until your domain is on your own key.

02Two lines to install

<script type="module" src="https://cdn.edufacturing.com/embed.js" data-ef-api="https://developers.edufacturing.com"></script>

<ef-printer-advisor
    ef-key="pk_ef_live_your_publishable_key"
    ef-locale="en"
    ef-theme="auto"></ef-printer-advisor>

The publishable key belongs in the HTML — that is the same model as <stripe-pricing-table>. What protects it is the domain allow-list on your key, not secrecy.

03The three elements

ElementWhat it doesState
<ef-printer-advisor> Six questions, three machines with an explanation and rule citations Live
<ef-quote-calculator> Instant print quote from an uploaded model Reserved — enabled once the calculator URL is configured
<ef-agent-chat> An EDi engineering agent in a chat panel Reserved — enabled once the agent URL is configured

04What a key gives you, and what it does not

KeyWhere it livesWhat it opens
pk_ef_live_… In your page’s HTML Widget configuration, and only from the domains you list. Off-list requests get 403 and are not counted against your quota.
sk_ef_live_… On your server only Server-to-server calls. It is shown once, at creation, and never again — not in the dashboard, not in a log line, not in an error message.

Sending a secret key to the widget endpoint is refused with a named error rather than quietly working — a key that leaks because it happened to work in the browser is worse than one that fails loudly on the first try.