User Guide

Overview

Nutripare lets you look up food products by EAN barcode, display their nutritional values side by side, and highlight differences based on configurable rules. Enter one or more barcodes on the Compare page and instantly see how products stack up across protein, sugar, fat, salt, and more.

Product data comes from Open Food Facts, a free collaborative database maintained by volunteers. Values may be incomplete or inaccurate — always verify important information against the physical product label.

Searching for Products

EAN barcodes are entered into the search field on the Compare page. Valid codes are 8, 12, or 13 digits long — shorter or longer values are rejected immediately.

You can enter a single EAN to look up one product, or enter multiple EANs at once by separating them with commas: 5000112637922, 8076809513388. After the first product loads, additional products can be added one at a time or in bulk using the same input field — they are appended as new columns in the table.

The barcode scanner button opens the device camera to scan a physical barcode. Low-resolution webcams can produce inconsistent results, so manual entry is recommended as a fallback if scanning is unreliable.

Two error states are displayed in amber below the input:

  • Invalid EAN format — the code is not a valid 8, 12, or 13-digit EAN.
  • Product not found — the code is valid but no matching product exists in Open Food Facts.

The Nutrition Table

Each product appears as a column. All values are per 100g.

Color coding

  • Green (great) the value meets a "great" threshold rule.
  • Blue (good) the value meets a "good" threshold rule.
  • Amber (concerning) the value meets a "concerning" threshold rule.
  • Red (bad) the value meets a "bad" threshold rule.
  • No color — the value does not match any rule, or no rules are defined for that nutrient.

Emoji flags

  • Crown (👑) — shown on the best value across products for a nutrient that has a “great” rule.
  • Red flag (🚩) — shown on the worst value across products for a nutrient that has a “bad” rule.

Emojis only appear when comparing two or more products, and can be hidden in Settings.

Default thresholds

The app ships with a built-in default ruleset based on the UK Food Standards Agency (FSA) per-100g traffic light thresholds, which are also widely used across the EU for front-of-pack nutrition labeling. These defaults apply to signed-out users and to signed-in users who have not yet customized their settings.

NutrientThresholdValue (per 100g)Rating
Proteinabove20gGreat
Sugarbelow5gGreat
Sugarabove22.5gBad
Saturated Fatbelow1.5gGreat
Saturated Fatabove5gBad
Fiberabove6gGreat
Saltbelow0.3gGreat
Saltabove1.5gBad

Sorting

Clicking any row label sorts all product columns by that nutrient, highest to lowest. Clicking again reverses the sort. The active sort column is highlighted and shows an arrow indicator.

Computed Score

A single 0–100 score calculated from the active ruleset appears at the bottom of the table. It reflects how well a product performs across all rules — positive rules raise the score, negative rules lower it. Hovering the help icon next to the label shows a brief tooltip.

The score is computed as follows:

  1. For each rule that fires (the product's value meets the rule's condition), a weighted contribution is calculated. The weight depends on the rating: Great = +3, Good = +1, Concerning = −1, Bad = −3.
  2. The contribution is scaled by how far the value exceeds the threshold: weight × log(1 + distance / max(threshold, 1)), where distance is |value − threshold|.
  3. All contributions are summed into a raw score, then mapped to the 0–100 range using: round(50 × (1 + tanh(rawScore / 3))), clamped to [0, 100].

A score of 50 is neutral (no rules fire). Scores above 50 indicate a generally healthy profile under the active ruleset; scores below 50 indicate the opposite. Nutrients with missing values are skipped and do not affect the score.

Table Actions

The menu in the top-right of the table gives access to table-wide actions:

  • Switch ruleset (signed-in users) — changes which ruleset is used for highlights and scoring.
  • Save comparison / Update comparison / Save as new comparison — see Saving below.
  • Share — copies a shareable URL for the current set of products to the clipboard.
  • Clear all — removes all products from the table.

Each product column also has its own menu with:

  • Save product / Unsave product (signed-in users only).
  • Share — copies a shareable URL for just that product.
  • Remove — removes the product column from the table.

Saving Products and Comparisons

Signed-in users can save individual products via the per-column menu. Saved products are stored in the Products tab under Settings.

Signed-in users can save the current set of two or more products as a named comparison. A dialog prompts for a name (pre-filled with a suggestion). Saved comparisons appear in the Comparisons tab under Settings.

When a saved comparison is loaded (via the Comparisons tab or a shared URL), the table shows its name and tracks whether the products have been modified since loading. If modified, the menu offers Update [name] (overwrite) or Save as new comparison.

To delete a saved comparison from the table view, use Delete [name] in the menu. To unsave an individual product, use Unsave product in the per-column menu.

Settings — Account

The Account tab lets you manage your signed-in account: update your display name, change your email address, set a new password, and sign out.

Settings — Nutrition

Visible rows — checkboxes control which nutrient rows appear in the table. The drag handle to the left of each row allows reordering — the order is reflected in the table.

Highlights — two toggles, “Show crown (👑)” and “Show flag (🚩)”, enable or disable the emoji indicators globally.

Rulesets — a list of saved rulesets. Each ruleset defines which nutrients are highlighted and how. New accounts start with three built-in rulesets: Default, Low Carb, and High Protein. Use the search box to filter by name; drag handles allow reordering the list.

  • Clicking the eye icon opens the ruleset editor.
  • Clicking the trash icon (with confirmation) deletes the ruleset.
  • Add ruleset opens a dropdown with two options: New ruleset creates a blank ruleset and opens the editor immediately, and From template lets you restore any of the three built-in rulesets individually.

In the ruleset editor:

  • The ruleset name is editable inline at the top.
  • Each rule defines: nutrient, direction (above/below), threshold value, and rating (great / good / concerning / bad).
  • Rules can be reordered by dragging. This is purely for organizational purposes and does not affect the scoring.
  • Add rule appends a new blank rule row.
  • Save persists the ruleset.
  • Delete ruleset removes it (with confirmation); disabled for newly created unsaved rulesets.
  • Cancel discards unsaved changes; cancelling a new ruleset also removes it from the list.

All changes — visible rows, row order, highlight toggles, and ruleset edits — are saved using the Save button at the bottom of the tab. Reset to defaults (next to Save) restores all nutrition settings to their original state, including the three built-in rulesets.

Settings — Products

Lists all saved products in a searchable table. Search by name or EAN to filter the list.

  • The view button opens the product on the Compare page in a new tab.
  • The unsave button removes the product from your saved list.

Checking two or more products enables a Compare button at the bottom that opens those products on the Compare page in a new tab.

Settings — Comparisons

Lists all saved comparisons in a searchable table. Search by name or EAN to filter the list. Each row shows the comparison name and the EAN codes it contains.

  • The pencil icon puts the row into rename mode — confirm with the checkmark or cancel with the X.
  • The view button opens the comparison on the Compare page in a new tab.
  • The unsave button removes the comparison from your saved list.

Signed-in vs. Signed-out

Search and compare products
Color-coded nutrition highlights
Table sorting
Share products and comparisons via URL
Save and manage products
Save and manage comparisons
Create and customize rulesets
Control visible rows and order
Toggle crown and flag indicators
Switch rulesets on the Compare page
Settings synced across devices

FAQ

Scanning & Products

Scoring

Comparisons & Settings

Account

General