PageSourceSearch

https://world.openfoodfacts.org/contribute

html openfoodfacts.org collected 2026-09-24 08:23:53 UTC 39,718 bytes, 932 lines download raw bytes

1<!-- start templates/web/common/site_layout.tt.html -->
2
3<!doctype html>
4<html class="no-js" lang="en" data-serverdomain="openfoodfacts.org" dir="ltr">
5<head>
6    <meta charset="utf-8">
7    <title></title>
8    
9    <meta name="viewport" content="width=device-width, initial-scale=1.0">
10	<meta property="fb:app_id" content="219331381518041">
11    <meta property="og:type" content="food">
12    <meta property="og:title" content="">
13    <meta property="og:url" content="https://world.openfoodfacts.org/contribute">
14    
15    <meta property="og:image" content="https://static.openfoodfacts.org/images/logos/off-logo-vertical-white-social-media-preview.png">
16    <meta property="og:description" content="A collaborative, free and open database of ingredients, nutrition facts and information on food products from around the world">
17    <link rel="manifest" href="/cgi/manifest.pl">
18<link rel="apple-touch-icon" sizes="180x180" href="/images/favicon/off/apple-touch-icon.png">
19<link rel="icon" type="image/png" sizes="32x32" href="/images/favicon/off/favicon-32x32.png">
20<link rel="icon" type="image/png" sizes="16x16" href="/images/favicon/off/favicon-16x16.png">
21<link rel="mask-icon" href="/images/favicon/off/safari-pinned-tab.svg" color="#5bbad5">
22<link rel="shortcut icon" href="/images/favicon/off/favicon.ico">
23<meta name="msapplication-TileColor" content="#00aba9">
24<meta name="msapplication-config" content="/images/favicon/off/browserconfig.xml">
25<meta name="theme-color" content="#ffffff">
26
27	<meta name="apple-itunes-app" content="app-id=588797948">
28    <link rel="canonical" href="https://world.openfoodfacts.org/contribute">
29    <link rel="stylesheet" href="https://static.openfoodfacts.org/css/dist/app-ltr.css?v=1790007695" data-base-layout="true">
30    <link rel="stylesheet" href="https://static.openfoodfacts.org/css/dist/jqueryui/themes/base/jquery-ui.css" data-base-layout="true">
31    <link rel="stylesheet" href="https://static.openfoodfacts.org/css/dist/select2.min.css">
32    <link rel="search" href="https://world.openfoodfacts.org/cgi/opensearch.pl" type="application/opensearchdescription+xml" title="Open Food Facts">
33    
33<script type="importmap">
34    {
35        "imports": {
36            "@openfoodfacts/openfoodfacts-webcomponents": "https://static.openfoodfacts.org/js/dist/off-webcomponents.bundled.js",
37			"cropperjs": "https://static.openfoodfacts.org/js/dist/cropper.esm.js",
38            "leaflet": "https://static.openfoodfacts.org/js/dist/leaflet-src.js",
39            "leaflet.markercluster": "https://static.openfoodfacts.org/js/dist/leaflet.markercluster.js",
40            "jsvectormap": "https://static.openfoodfacts.org/js/dist/jsvectormap.esm.js"
41        }
42    }
43    </script>
43
44    
44<script type="module" src="https://static.openfoodfacts.org/js/dist/off-webcomponents.bundled.js"></script>
44
45	
46    <style media="all">
47        .show-when-no-access-to-producers-platform {display:none}
48.show-when-logged-in {display:none}
49
50
51		.badge-container{
52			margin: 0 auto;
53		}
54
55		.badge-container img{
56			margin: 5px;
57		}
58		@media only screen and (max-width: 537px ) and (min-width: 280px) {
59			.badge-container{
60				width: 280px;
61			}
62		}
63		@media only screen and (max-width: 279px ){
64			.badge-container{
65				width: 130px;
66			}
67		}
68    </style>
69</head>
70<body class="text_page">
71
72	<!-- Matomo -->
73<script>
74  var _paq = window._paq = window._paq || [];
75  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
76  _paq.push(["setDocumentTitle", document.domain + "/" + document.title]);
77  _paq.push(["setCookieDomain", "*.openfoodfacts.org"]);
78  _paq.push(["setDomains", ["*.openfoodfacts.org"]]);
79  _paq.push(["setDoNotTrack", true]);
80  _paq.push(["disableCookies"]);
81  _paq.push(['enableHeartBeatTimer']);
82  _paq.push(['trackPageView']);
83  _paq.push(['enableLinkTracking']);
84  (function() {
85    var u="//analytics.openfoodfacts.org/";
86    _paq.push(['setTrackerUrl', u+'matomo.php']);
87    _paq.push(['setSiteId', '5']);
88    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
89    g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
90  })();
91</script>
91
92<noscript><p><img src="//analytics.openfoodfacts.org/matomo.php?idsite=5&amp;rec=1" style="border:0;" alt="" /></p></noscript>
93<!-- End Matomo Code -->
94
95
96
97	<off-webcomponents-configuration
98  language-code="en"
99  country-code="world"
100  robotoff-configuration='{
101    "apiUrl": "https://robotoff.openfoodfacts.org/api/v1",
102    "imgUrl": "https://images.openfoodfacts.org/images/products"
103  }'
104  
105  openfoodfacts-api-url="https://world.openfoodfacts.org"
106  assets-images-path="https://static.openfoodfacts.org/css/dist/images"
107  ></off-webcomponents-configuration>
108
109	
110	<div class="skip"><a href="#content" tabindex="0">Skip to Content</a></div>
111	
112
113	<div id="barcode-scanner-modal" class="modal is_hidden">
114  <div class="modal-backdrop"></div>
115  <div class="modal-content">
116    <div class="modal-header">
117      <h2><span>Scan a product</span></h2>
118      <button class="modal-close-button">&times;</button>
119    </div>
120    <div>
121      <barcode-scanner id="barcode-scanner"></barcode-scanner>
122    </div>
123    <div>
124    </div>
125    <div >
126      <label for="barcode-modal-input">Or enter barcode manually</label>
127      <div class="barcode-modal-group">
128        <input type="text" id="barcode-modal-input" class="barcode-modal-input" inputmode="numeric" pattern="\d*" />
129        <button class="barcode-modal-button button" id="barcode-modal-button" disabled>Scan</button>
130      </div>
131    </div>
132  </div>
133</div>
134
135<script src="https://static.openfoodfacts.org/js/dist/barcode-scanner.js"></script>
135
136
137
138	<div id="page">
139		
140		<div class="upper-nav contain-to-grid"  id="upNav">
141			<nav class="top-bar " data-topbar role="navigation">
142
143				<section class="top-bar-section">
144
145					<!-- Left Nav Section -->
146					<ul class="left">
147
148						<li class="has-dropdown">
149							<a id="menu_link">
150								<span class="material-icons">
151									menu
152								</span>
153							</a>
154							<ul class="dropdown">
155								
156									<li><a href="/discover">Discover</a></li>
157									<li><a href="/contribute">Contribute</a></li>
158									<li class="divider"></li>
159									<li><label>Add products</label></li>
160                <!-- For reference: get_the_app_link_off" = /open-food-facts-mobile-app" -->
161									<li><a href="/open-food-facts-mobile-app?utm_source=off&utm_medium=web&utm_campaign=pro_platform_install_the_app_to_add_products_en">Install the app to add products</a></li>
162									<li><a href="/cgi/product.pl?type=search_or_add&action=display">Add a product</a></li>
163								
164
165								<li class="divider"></li>
166								<li><label>Search and analyze products</label></li>
167
168								<li>
169									<a href="/cgi/search.pl">Advanced search</a>
170								</li>
171								<li>
172									<a href="/cgi/search.pl?graph=1">Graphs and maps</a>
173								</li>
174								
175							</ul>
176						</li>
177
178						<li>
179							<ul class="country_language_selection">
180								<li class="has-form has-dropdown" id="select_country_li">
181									<select id="select_country" style="width:100%" data-placeholder="Country">
182										<option></option>
183									</select>
184								</li>
185								<li class="has-dropdown">
186									<a href="https://world.openfoodfacts.org/">English</a>
187
188									<ul class="dropdown">
189										
190									</ul>
191								</li>
192							</ul>
193						</li>
194					</ul>
195
196
197					<!-- Right Nav Section -->
198
199					<ul class="right">
200						
201							<li class="h-space-tiny has-form">
202								<a href="/cgi/session.pl" class="round button secondary">
203									<span class="material-icons material-symbols-button">account_circle</span>
204									Sign in
205								</a>
206							</li>
207						
208					</ul>
209				</section>
210			</nav>
211		</div>
212		
213
214		<div id="main_container" style="position:relative" class="block_latte">
215
216		
217		<div class="topbarsticky">
218			<div class="contain-to-grid " id="offNav" >
219				<nav class="top-bar" data-topbar role="navigation" >
220
221					<ul class="title-area">
222						<li class="name">
223							<div style="position:relative;max-width:292px;">
224								<a href="/">
225								<img id="logo" src="https://static.openfoodfacts.org/images/logos/off-logo-horizontal-light.svg" alt="Open Food Facts" style="margin:8px;height:48px;width:auto;">
226								
227							</a>
228							</div>
229						</li>
230					</ul>
231
232					
233					
234					<section class="top-bar-section">
235
236						<ul class="left small-4">
237							<li class="search-li">
238
239								<form action="/cgi/search.pl">
240								<div class="row"><div class="small-12">
241								<div class="row collapse postfix-round">
242									<div class="columns">
243									<input type="text" placeholder="Search for a product" name="search_terms" value="" style="background-color:white">
244									<input name="search_simple" value="1" type="hidden">
245									<input name="action" value="process" type="hidden">
246									</div>
247									<div class="columns postfix-button-wrapper">
248									<button type="submit" title="Search" class="button postfix" style="line-height:normal"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/><path d="M0 0h24v24H0z" fill="none"/></svg></button>
249									</div>
250									<div class="columns postfix-button-wrapper is_hidden">
251  <button
252    type="button"
253    title="Scan a product"
254    class="button barcode-scanner-button"
255    id="barcode-scanner-button"
256  >
257    <svg style="width:24px;height:24px" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false">
257<path d="M2,6H4V18H2V6M5,6H6V18H5V6M7,6H10V18H7V6M11,6H12V18H11V6M14,6H16V18H14V6M17,6H20V18H17V6M21,6H22V18H21V6Z"/></svg>
258  </button>
259
260  
260<script src="https://static.openfoodfacts.org/js/dist/barcode-scanner-button.js"></script>
260
261</div>
262
263								</div>
264								</div></div>
265								</form>
266							</li>
267						</ul>
268					<ul class="search_and_links">
269						<li><a href="/discover" class="top-bar-links">Discover</a></li>
270						<li><a href="/contribute" class="top-bar-links">Contribute</a></li>
271						<li class="show-for-xlarge-up"><a href="https://world.pro.openfoodfacts.org/" class="top-bar-links">Producers</a></li>
272						<li class="flex-grid getapp"><a href="/open-food-facts-mobile-app?utm_source=off&utm_medium=web&utm_campaign=search_and_links_promo_en" class="buttonbar button" style="top:0;"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false"><path d="M16 1H8C6.34 1 5 2.34 5 4v16c0 1.66 1.34 3 3 3h8c1.66 0 3-1.34 3-3V4c0-1.66-1.34-3-3-3zm-2 20h-4v-1h4v1zm3.25-3H6.75V4h10.5v14z"/><path d="M0 0h24v24H0z" fill="none"/></svg> <span class="bt-text">Get the app</span></a></li>
273				<!-- For reference: get_the_app_link_off" = /open-food-facts-mobile-app" -->
274          </ul>
275					</section>
276					
277				</nav>
278			</div>
279		</div>
280
281	
282	
283		<nav class="tab-bar hide">
284			<div class="left-small">
285				<a href="#idOfLeftMenu" role="button" aria-controls="idOfLeftMenu" aria-expanded="false" class="left-off-canvas-toggle button postfix anonymous">
286				<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false"><path d="M3 5v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2H5c-1.11 0-2 .9-2 2zm12 4c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3 3 1.34 3 3zm-9 8c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1H6v-1z"/><path d="M0 0h24v24H0z" fill="none"/></svg>
287				</a>
288			</div>
289			<div class="middle tab-bar-section">
290				<form action="/cgi/search.pl">
291					<div class="row collapse">
292						<div class="small-8 columns">
293							<input type="text" placeholder="Search for a product" name="search_terms">
294							<input name="search_simple" value="1" type="hidden">
295							<input name="action" value="process" type="hidden">
296						</div>
297						<div class="small-2 columns">
298							<button type="submit" class="button postfix"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/><path d="M0 0h24v24H0z" fill="none"/></svg></button>
299						</div>
300						<div class="small-2 columns">
301							<a href="/cgi/search.pl" title="Advanced search"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/><path d="M0 0h24v24H0z" fill="none"/></svg> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="icon" aria-hidden="true" focusable="false"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/><path d="M0 0h24v24H0z" fill="none"/></svg></a>
302						</div>
303					</div>
304				</form>
305			</div>
306		</nav>
307		
308
309		<div id="content" class="off-canvas-wrap block_latte" data-offcanvas>
310			<div class="inner-wrap">
311
312				<a class="exit-off-canvas"></a>
313
314				
315
316				<!-- full width banner on mobile -->
317
318				
319
320				
321
322				<div class="main block_light">
323					<div id="main_column">
324
325						
326						
327							
328							
329								<!-- start templates/web/common/includes/donate_banner.tt.html -->
330
331
332<!-- Donation banner TOP END -->
333<!-- Donation banner @ footer start-->
334
335<!-- Donation banner @ footer end-->
336<!-- end templates/web/common/includes/donate_banner.tt.html -->
337
338								
339
340
341<!-- Donation banner TOP start -->
342<section id="donation-banner-top" class="donation-banner row">
343
344  <div class="donation-banner__left-aside">
345    <div class="donation-banner__hook-section">
346      <p>We still need €120,000 to finish 2026!</p>
347    </div>
348    <img src="/images/misc/donation-banners/donation-banner-group-photo.png" alt="group photo donation 2024" />
349  </div>
350  <div>
351    <div class="donation-banner__aside">
352      <div class="donation-banner__main-section">
353        <img
354          width="50"
355          height="50"
356          src="https://world.openfoodfacts.org/images/logos/logo-variants/CMJN-ICON_WHITE_BG_OFF.svg"
357          alt="Open Food Facts logo"
358        />
359        <h3 class="donation-banner__main-title">Become an Open Food Facts patron</h3>
360      </div>
361      <div style="padding:1rem;">
362        <p>Every month, we serve 8 million visitors, and many times that through the API. Your support is essential to:</p>
363        <ul>
364          <li>
365            keep Open Food Facts open & available to all,
366            <ul>
367              <li>
367support infrastructure, the website, mobile app and API with a small permanent team</li>
368            </ul>
369          </li>
370          <li>
371            <p>remain independent of the food industry,</p>
372          </li>
373          <li>
374            <p>support the community</p>
375          </li>
376          <li>
377            <p>support science</p>
378          </li>
379        </ul>
380      </div>
381    </div>
382    <div class="donation-banner__actions-section">
383      <div class="donation-banner__actions-section__financial">
384        <p>
385          
386          If every visitor this month clicked on Donate and gave just 1€, we'd get over 8 times our yearly budget!
387          
388        </p>
389      </div>
390      <div class="donation-banner__actions-section__donate-button">
391        <a href="https://world.openfoodfacts.org/donate-to-open-food-facts?utm_source=off&utm_medium=web&utm_campaign=donate-2026-a&utm_term=en-text-button">
392          <button>Donate</button>
393        </a>
394      </div>
395    </div>
396  </div>
397
398
399  <div class="donation-banner__close">
400    <button id="hide-donate-banner" class="material-icons modest" onclick="DonationButton();" onkeypress="DonationButton();">close</button>
401  </div>
402</section>
403
404<script>
405  let d = new Date();
406  let bannerID = document.getElementById('donation-banner-top');
407  let getDomain = window.location.origin.split('.');
408
409  function setBannerCookie(bcname, bcval, bcexdays) {
410    d.setTime(d.getTime() + (bcexdays*60*60*24*1000));
411    let expires = 'expires=' + d.toUTCString();
412    // Apply cookie for every domain contains open...facts
413    let domain = 'domain=.' + getDomain.slice(1).join('.');
414    document.cookie = bcname + '=' + bcval + ';' + expires + ';' + domain + ';SameSite=None;Secure;path=/';
415  }
416
417  function getBannerCookie(bcname) {
418    const name = bcname + '=';
419    const decodedCookies = decodeURIComponent(document.cookie);
420    const cookies = decodedCookies.split(';');
421    for (const cookie of cookies) {
422      let c = cookie;
423      while (c.charAt(0) == ' ') { c = c.substring(1); }
424      if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); }
425    }
426
427    return '';
428  }
429
430  function DonationButton() {
431    setBannerCookie('donation_march_2026', 1, 180);
432    bannerID.style.display = 'none';
433  }
434
435  if (getBannerCookie('donation_march_2026') !== '') {
436    bannerID.style.display = 'none';
437  } else {
438    bannerID.style.display = 'flex';
439  }
440</script>
440
441
442
443							
444						
445						
446
447						
448							<div class="row">
449								<div class="small-12 column">
450									<h1 class="if-empty-dnone"></h1>
451									 <!-- no side column -->
452<style>
453.contribute-cards-row {
454    display: flex;
455    flex-wrap: wrap;
456    justify-content: center;
457}
458.contribute-cards-row > .columns {
459    display: flex;
460    flex-direction: column;
461    margin-bottom: 1.5rem;
462}
463.contribute-cards-row > .columns .button {
464    margin-top: auto;
465    margin-bottom: 0;
466    align-self: center;
467}
468.contribute-grid {
469    display: flex !important;
470    flex-wrap: wrap;
471    justify-content: center;
472}
473.contribute-grid > li {
474    display: flex !important;
475    flex-direction: column;
476    margin-bottom: 1.5rem;
477}
478.contribute-grid > li .button {
479    margin-top: auto;
480    margin-bottom: 0;
481    align-self: center;
482}
483</style>
484
485<h1 class="emphasized-title">Contribute to Open Food Facts</h1>
486
487<div class="row">
488	<div class="small-12 medium-6 large-4 columns">
489		<img src="https://blog.openfoodfacts.org/wp-content/uploads/2022/11/5-1024x726.png" alt="Open Food Facts community" style="margin-bottom:2rem">
490	</div>
491	<div class="small-12 medium-6 large-8 columns">
492		<p>
493Open Food Facts exists thanks to the citizens who give their time and talent in many different activities.
494We are a large international family that gives a unique character to this beautiful project, made for all, by all! 🌍✨ 
495		</p>
496		<a class="button" href="https://wiki.openfoodfacts.org/Contributor">Join our community</a>
497		<p>
498To facilitate the involvement of our contributors and allow the project to grow in a more dynamic way, we are setting up a Contributors Skill Pool, as well as teams of volunteers by theme.
499		</p>
500		<p>
501✅ The aim is to match your skills and interests to the needs of the project.
502		</p>
503		<p>
504Whether you are already a very involved contributor or have just arrived and want to participate, we invite you to fill in the form below. (All personal data you enter will be kept confidential and used only by the permanent team to contact you).
505		</p>
506<a class="button" href="https://connect.openfoodfacts.org/join-the-contributor-skill-pool-open-food-facts">Contributors Skill Pool form in ENG/FR</a>
507	</div>
508</div>
509
510
511<hr>
512
513<div class="row text-center">
514	<div class="large-12 columns">
515		<h2 class="emphasized-title">
515Everyone can contribute</h2>
516		<h4 class="subheader">Be part of our collaborative, free and open source database of food products from around the world!</h4>
517		<p>Open Food Facts is a non-profit project made entirely by volunteers, we do need you.</p>
518
519	</div>
520</div>
521<div class="row text-center contribute-cards-row">
522	<div class="medium-3 columns">
523		<h3>Add products</h3>
524		<p>Use our <a href="https://play.google.com/store/apps/details?id=org.openfoodfacts.scanner&hl=en&utm_source=off&utm_campaign=contribute-promo&utm_medium=website">Android</a> or <a href="https://apps.apple.com/app/open-food-facts/id588797948?utm_source=off&utm_campaign=contribute-promo&utm_medium=website">iPhone</a> app to easily scan the barcode of products from your home or local stores and upload pictures of their label.</p>
525		<p>No smartphone? No problem: you can also use your camera to add products directly on the web site.</p>
526		<a class="button" href="https://world.openfoodfacts.org/open-food-facts-mobile-app?utm_source=off&utm_medium=web&utm_campaign=search_and_links_promo_en">Install the app to contribute to food, cosmetic, pet food and product transparency</a>
527	</div>
528
529
530	<div class="medium-3 columns">
531		<h3>Complete products</h3>
532    <p>We need to categorize products and extract ingredients lists and nutrition facts to
533analyze their nutritional quality, determine if they are suitable for vegans and vegetatarians and much more!</p>
534    <p><a href="/help-complete-products">You can help us complete products</a> by selecting and cropping photos and filling in information, or by participating in our <a href="/contribute-to-open-food-facts-by-playing">Hunger Games</a>.</p>
535
536	</div>
537
538	<div class="medium-3 columns">
539		<h3>Tell the world</h3>
540		<p>Do you like Open Food Facts? Tell others about it!</p>
541		<p>You can present the project to your family and friends, show them how to install the app and contribute, write a blog post, and share Open Food Facts on social media.</p>
542
543	</div>
544
545	<div class="medium-3 columns">
546		<h3>Make it local</h3>
547		<p>You can help us translate the website and mobile app in your language as well as the documents, announcements etc.</p>
548		<p>Start or join a local contributors community: add local products, recruit friends, present the project in local meetups and conferences etc.</p>
549		<a class="button" href="https://wiki.openfoodfacts.org/Translations">Help translate Open Food Facts</a>
550	</div>
551</div>
552
553<hr>
554
555<div class="row text-center">
556	<div class="large-12 columns">
557		<h2 class="emphasized-title">Expert help needed</h2>
558		<p>Developing Open Food Facts also requires specialized knowledge and expertise in many different areas:</p>
559	</div>
560</div>
561
562<ul class="text-center small-block-grid-1 medium-block-grid-2 large-block-grid-3 contribute-grid">
563	<li>
564		<h3>Project management</h3>
565		<p>We have tons of ideas and you probably have even more, but it is quite a challenge to prioritize them, to build a roadmap, and to manage projects when every participant is a volunteer with often limited time available.</p>
566	</li>
567
568	<li>
569		<h3>Design</h3>
570		<p>We need help to build a better user experience on the Open Food Facts web site and mobile app, to improve their design, to create impactful presentation materials etc.</p>
571		<a class="button" href="https://github.com/openfoodfacts/openfoodfacts-design">Join our design effort</a>
572	</li>
573
574	<li>
575		<h3>Development</h3>
576		<p>We have a <a href="https://world.openfoodfacts.org/development">lot of development work to do</a>. On the Open Food Facts backend (Perl and MongoDB), API (JSON), web site (templatized HTML5, JS, Foundation), our <a href="https://github.com/openfoodfacts/smooth-app">Flutter mobile app for iOS and Android</a>, but also to build new cool reuses etc. We have SDK projects in many programming languages to ensure anyone can reuse and contribute to Open Food Facts, in any language. We also have a growing Artificial Intelligence effort to simplify contribution work. Our code is on <a href="https://github.com/openfoodfacts">GitHub</a>.
577			<a class="button" href="https://github.com/openfoodfacts">Explore the list of projects on GitHub</a>
578	</li>
579
580	<li>
581		<h3>Community building</h3>
582		<p>We need to build local communities in all countries and at the same time unite them globally.</p>
583		<p>It is very difficult to bootstrap a local community in a country without living there, so your help to find the first very motivated participants is essential. Are you one of them?</p>
584	</li>
585	<li>
586		<h3>Communication</h3>
587		<p>We are not sure what to write here, could you help?</p>
588		<p>More seriously, there are lot of cool things that users, contributors and reusers do with Open Food Facts, it would be great to get more people to know about it. In particular, we need help for public and <a href="/press">media relations</a>.</p>
589	</li>
590	<li>
591		<h3>Special projects</h3>
592<p>There are lots of interesting and original applications of food open data that we could work on with government food agencies, food producers, researchers, universities, schools, NGOs etc. Maybe you already have ideas? If you do, please help us to push them forward.</p></li>
593</ul>
594
595<hr>
596
597<div class="row text-center">
598	<div class="large-12 columns">
599		<h2>Let's talk!</h2>
600		<h4 class="subheader">A lot of ideas, energy and enthusiasm are shared in our contributors community, join us!</h4>
601		<p>Here are some places where you can meet other contributors, talk to them and work with them:</p>
602	</div>
603</div>
604
605<ul class="text-center small-block-grid-1 medium-block-grid-2 large-block-grid-3 contribute-grid">
606	<li>
607		<h3>Slack</h3>
608		<p>Slack is the best way to interact and collaborate with other contributors, developers and reusers. It's a discu
608ssion forum you can access from your browser or your phone. It completely changed how we work together. Please try it, <a href="https://slack.openfoodfacts.org/">click here to get invited to our Slack</a>.</p>
609		<a class="button" href="https://slack.openfoodfacts.org/">Join the Open Food Facts chat server</a>
610	</li>
611
612	<li>
613		<h3>Spread the word on social media</h3>
614		<p>We have <a href="http://world.openfoodfacts.org/follow-open-food-facts">many social media accounts and groups for Open Food Facts contributors</a> in many languages. Joining them is a good way to get news about the project and to share announcements to a wider audience.</p>
615	</li>
616
617	<li>
618		<h3>Wiki</h3>
619		<p>We also have a <a href="https://wiki.openfoodfacts.org/">wiki</a> that we use to collaboratively document Open Food Facts and its sub-projects. From the wiki, you can learn how to help translate the multilingual information (categories, labels etc.) a food product might have (<a href="https://wiki.openfoodfacts.org/Global_taxonomies">using what we call taxonomies</a>). You can even help add a food category or a label that is not yet supported by Open Food Facts.</p>
620		<a class="button" href="https://wiki.openfoodfacts.org/">Explore the Open Food Facts wiki</a>
621	</li>
622</ul>
623
624
625<div class="row text-center">
626	<div class="large-12 columns">
627		<h2 class="emphasized-title">Make a difference</h2>
628		<h4 class="subheader">We have several important on-going operations, join us!</h4>
629		<p>Here are some places where you can have impact now:</p>
630	</div>
631</div>
632
633<ul class="text-center small-block-grid-1 medium-block-grid-2 large-block-grid-3 contribute-grid">
634	<li>
635		<h3>Operation Packaging</h3>
636		<p>Let's weigh the packagings of common foods to discover how much impact we have.</p>
637		<p><a href="https://blog.openfoodfacts.org/fr/rejoignez-loperation-plein-pot-sur-les-emballages">How you can help as an Open Food Facts user</a>, <a href="https://blog.openfoodfacts.org/fr/plein-pot-fabricants">How you can help as a producer</a>, <a href="https://blog.openfoodfacts.org/en/plein-pot-presse">Press page</a></p>
638	</li>
639
640	<li>
641		<h3>Data quality effort</h3>
642		<p>We have a data quality effort that <a href="https://wiki.openfoodfacts.org/Quality">you can join here</a>. We meet monthly (details on the wikipage).</p>
643	</li>
644
645	<li>
646		<h3>Your own operation</h3>
647		<p>If you have an important topic, you are very welcome to organize your own operation.</p>
648		<a class="button" href="mailto:[email protected]">Get in touch at [email protected]</a>
649	</li>
650</ul>
651
652<a class="button" href="https://wiki.openfoodfacts.org/Projects_homepage">Explore on-going projects</a>
653
654<hr>
655
656<div class="row text-center">
657	<div class="large-12 columns">
658		<p>There are many more ways to contribute to Open Food Facts, please <a href="https://slack.openfoodfacts.org">join us on Slack</a> and let's start the discussion!</p>
659	</div>
660</div>
661
662<script>
663	function onMount(fn) {
664		if (document.readyState === "loading") {
665			document.addEventListener("DOMContentLoaded", fn);
666		} else {
667			fn();
668		}
669	}
670
671	onMount(() => {
672		function sendHeight() {
673			const height = document.body.scrollHeight;
674			console.debug("Calculated height: " + height);
675			if (typeof parent !== 'undefined' && parent !== window) {
676				parent.postMessage({ frameHeight: height }, '*');
677			}
678		}
679		// Send the height on initial load
680		sendHeight();
681		// Send the height whenever the window is resized
682		window.addEventListener("resize", sendHeight);
683	});
684</script>
684
685
686								</div>
687							</div>
688						
689					</div>
690				</div>
691			</div>
692		</div>
693		</div>
694
695		
696		<footer>
697			<div class="block_light bg-white" id="install_the_app_block">
698				<div class="row">
699					<div class="small-12 flex-grid v-space-short v-align-center direction-row h-space-tiny">
700						<div class="cell small-100 medium-100 large-50 flex-grid v-align-center direction-row">
701							<img class="cell small-50 v-align-center" src="/images/illustrations/app-icon-in-the-clouds.svg" alt="The Open Food Facts logo in the cloud" style="height:120px">
702							<div class="cell small-50 v-align-center" id="footer_scan" style="display:block">
703								<div id="footer_install_the_app">
704									Install the app!
705								</div>
706								Scan your <span id="everyday">everyday</span> <span id="foods">foods</span>
707							</div>
708						</div>
709						<div class="row">
710							<div class="small-12 medium-12 large-12 v-space-normal column badge-container">
711								<!-- android_app_link - https://play.google.com/store/apps/details?id=org.openbeautyfacts.scanner&hl=en -->
712								<a  href="https://play.google.com/store/apps/details?id=org.openfoodfacts.scanner&utm_source=off&utm_medium=web&utm_campaign=install_the_app_android_footer_en"><img src="/images/misc/playstore/img/latest/GetItOnGooglePlay_Badge_Web_color_English.svg" alt="Get It On Google Play" loading="lazy" height="40" width="120"></a>
713
714								<a href="https://f-droid.org/packages/openfoodfacts.github.scrachx.openfood"><img src="/images/misc/f-droid/svg/get-it-on-en.svg" alt="Available on F-Droid" loading="lazy" height="40" width="120"></a>
715
716								<!-- android_apk_app_link - https://world.openfoodfacts.org/images/apps/off.apk -->
717								<a href="https://github.com/openfoodfacts/smooth-app/releases/latest?utm_source=off&utm_medium=web&utm_campaign=install_the_app_apk_footer_en"><img src="/images/misc/app-landing-page/download-apk/download-apk_en.svg" alt="Android APK" loading="lazy" height="40" width="120"></a>
718
719								<!-- msgid "https://apps.apple.com/app/open-beauty-facts/id1122926380" -->
720								<a href="https://apps.apple.com/app/open-food-facts/id588797948?utm_source=off&utm_medium=web&utm_campaign=install_the_app_ios_footer_en"><img src="/images/misc/appstore/black/appstore_US.svg" alt="Download on the App Store"  loading="lazy" height="40" width="120"></a>
721							</div>
722						</div>
723					</div>
724				</div>
725			</div>
726
727			
728      			<!-- start templates/web/common/includes/donate_banner.tt.html -->
729
730
731<!-- Donation banner TOP END -->
732<!-- Donation banner @ footer start-->
733
734<!-- Donation banner @ footer end-->
735<!-- end templates/web/common/includes/donate_banner.tt.html -->
736
737				
738
739<section class="donation-banner-footer row">
740  <div class="donation-banner-footer__left-aside">
741    <div class="donation-banner-footer__hook-section">
742      <p>We still need €120,000 to finish 2026!</p>
743    </div>
744    <img src="/images/misc/donation-banners/donation-banner-group-photo.png" alt="The Open Food Facts community during the Open Food Facts Days" />
745  </div>
746  <div>
747    <div>
748      <div class="donation-banner-footer__main-section">
749        <img
750          width="50"
751          height="50"
752          src="https://world.openfoodfacts.org/images/logos/logo-variants/CMJN-ICON_WHITE_BG_OFF.svg"
753          alt="Open Food Facts logo"
754        />
755        <h3 class="donation-banner-footer__main-title">Become an Open Food Facts patron</h3>
756      </div>
757      <p>Every month, we serve 8 million visitors, and many times that through the API. Your support is essential to:</p>
758      <ul>
759        <li>
760          keep Open Food Facts open & available to all,
761          <ul>
762            <li>support infrastructure, the website, mobile app and API with a small permanent team</li>
763          </ul>
764        </li>
765        <li>
766          <p>remain independent of the food industry,</p>
767        </li>
768        <li>
769          <p>support the community</p>
770        </li>
771        <li>
772          <p>support science</p>
773        </li>
774      </ul>
775    </div>
776    <div class="donation-banner-footer__actions-section">
777      <div class="donation-banner-footer__actions-section__financial">
778        <p>
779          If every visitor this month clicked on Donate and gave just 1€, we'd get over 8 times our yearly budget!
780        </p>
781      </div>
782      <div class="donation-banner-footer__actions-section__donate-button">
783        <a href="https://world.openfoodfacts.org/donate-to-open-food-facts?utm_source=off&utm_medium=web&utm_campaign=donate-2026-a&utm_term=en-text-button">
784          <button>Donate</button>
785        </a>
786      </div>
787    </div>
788  </div>
789</section>
790
791
792			
793
794			<div class="block_light block_cappucino" id="contribute_and_discover_links_block">
795				<div class="row">
796					<div class="small-12 large-6 columns v-space-normal block_off">
797						<h3 class="title-5 text-medium">Join the community</h3>
798						<p>Discover our <a href="/code-of-conduct">Code of conduct</a></p>
799						<p>Join us on <a href="https://slack.openfoodfacts.org">Slack</a></p>
800						<p><a href="https://forum.openfoodfacts.org/">Forum</a></p>
801						<p id="footer_social_icons">Follow us: 
802							<a href="https://x.com/OpenFoodFacts"><img src="/images/icons/dist/x.svg" class="footer_social_icon" alt="X formerly Twitter"></a>
803							<a href="https://www.facebook.com/OpenFoodFacts?utm_source=off&utm_medium=web"><img src="/images/icons/dist/facebook.svg" class="footer_social_icon" alt="Facebook icon"></a>
804							<a href="https://www.instagram.com/open.food.facts/"><img src="/images/icons/dist/instagram.svg" class="footer_social_icon" alt="Instagram"></a>
805							
806						</p>
807						<p><a href="https://link.openfoodfacts.org/newsletter-en">Subscribe to our newsletter</a></p>
808					</div>
809					<div class="small-12 large-6 columns project v-space-normal">
810						<h3 class="title-5 text-medium">Discover the project</h3>
811						<ul class="inline-list tags_links v-space-tiny h-space-tiny" >
812							<li><a class="button small white-button radius" href="/who-we-are">Who we are</a></li>
813							<li><a class="button small white-button radius" href="/open-food-facts-vision-mission-values-and-programs">Vision, Mission, Values and Programs</a></li>
814							<li><a class="button small white-button radius" href="https://support.openfoodfacts.org/help/en-gb">Frequently asked questions</a></li>
815							<li><a class="button small white-button radius" href="https://blog.openfoodfacts.org/en/">Open Food Facts blog</a></li>
816							<li><a class="button small white-button radius" href="/press">Press</a></li>
817							<li><a class="button small white-button radius" href="https://wiki.openfoodfacts.org">Open Food Facts wiki (en)</a></li>
818							<li><a class="button small white-button radius" href="/cgi/top_translators.pl">Translators</a></li>
819							<li><a class="button small white-button radius" href="/partners">Partners</a></li>
820              <li><a class="button small white-button radius" href="/data">Data, API and SDKs</a></li>
821							<li><a class="button small white-button radius" href="https://world.openbeautyfacts.org">Open Beauty Facts - Cosmetics</a></li>
822              <li><a class="button small white-button radius" href="https://world.openproductsfacts.org">Open Products Facts</a></li>
823              <li><a class="button small white-button radius" href="https://world.openpetfoodfacts.org">Open Pet Food Facts</a></li>
824              <li><a class="button small white-button radius" href="https://prices.openfoodfacts.org/">Open Prices</a></li>
825							<li><a class="button small white-button radius" href="https://world.pro.openfoodfacts.org/">Open Food Facts for Producers</a></li>
826						</ul>
827					</div>
828				</div>
829			</div>
830
831			<div class="block_off block_dark block_ristreto" id="footer_block">
832
833				<div id="footer_block_image_banner_outside">
834					<div id="footer_block_image_banner_outside2">
835
836						<div class="row">
837
838							<div class="small-12 text-center v-space-short h-space-large">
839								<a href="/" style="font-size:1rem;"><img id="logo" src="https://static.openfoodfacts.org/images/logos/off-logo-horizontal-mono-white.svg" alt="Open Food Facts" style="margin:8px;height:48px;width:auto;"></a>
840
841								<p>A collaborative, free and open database of food products from around the world.</p>
842
843								<ul class="inline-list text-center text-small">
844									<li><a href="/legal">Legal</a></li>
845									<li><a href="/privacy">Privacy</a></li>
846									<li><a href="/terms-of-use">Terms of use</a></li>
847									<li><a href="https://world.openfoodfacts.org/donate-to-open-food-facts">Donate to Open Food Facts</a></li>
848									<li><a href="https://world.pro.openfoodfacts.org/">Producers</a></li>
849									<li><a href="https://link.openfoodfacts.org/newsletter-en">Subscribe to our newsletter</a></li>
850								</ul>
851							</div>
852
853						</div>
854
855					</div>
856				</div>
857			</div>
858		</footer>
859		
860
861	</div>
862
863<script src="https://static.openfoodfacts.org/js/dist/modernizr.js" data-base-layout="true"></script>
vendor: 1 bytes, line 863
863
864<script src="https://static.openfoodfacts.org/js/dist/jquery.js" data-base-layout="true"></script>
vendor: 1 bytes, line 864
864
865<script src="https://static.openfoodfacts.org/js/dist/jquery-ui.js" data-base-layout="true"></script>
vendor: 1 bytes, line 865
865
866<script src="https://static.openfoodfacts.org/js/dist/hc-sticky.js"></script>
vendor: 1 bytes, line 866
866
867<script src="https://static.openfoodfacts.org/js/dist/display.js"></script>
vendor: 1 bytes, line 867
867
868<script src="https://static.openfoodfacts.org/js/dist/stikelem.js"></script>
vendor: 1 bytes, line 868
868
869<script src="https://static.openfoodfacts.org/js/dist/scrollNav.js"></script>
869
870
871
872<script>
873$(function() {
874
875
876});
877</script>
877
878
879
880
881<script src="https://static.openfoodfacts.org/js/dist/foundation.js" data-base-layout="true"></script>
vendor: 1 bytes, line 881
881
882<script src="https://static.openfoodfacts.org/js/dist/jquery.cookie.js"></script>
vendor: 1 bytes, line 882
882
883<script src="https://static.openfoodfacts.org/js/dist/select2.min.js"></script>
vendor: 1 bytes, line 883
883
884<script src="https://static.openfoodfacts.org/js/dist/matomo-events.js"></script>
884
885
886<script>
887$(document).foundation({
888	equalizer : {
889		equalize_on_stack: true
890	},
891	accordion: {
892		callback : function (accordion) {
893			$(document).foundation('equalizer', 'reflow');
894		}
895	}
896});
897
898</script>
vendor: 1 bytes, line 898
898
899<script type="application/ld+json">
900{
901	"@context" : "https://schema.org",
902	"@type" : "WebSite",
903	"name" : "Open Food Facts",
904	"url" : "https://world.openfoodfacts.org",
905	"potentialAction": {
906		"@type": "SearchAction",
907		"target": "https://world.openfoodfacts.org/cgi/search.pl?search_terms=?{search_term_string}",
908		"query-input": "required name=search_term_string"
909	}
910}
911</script>
vendor: 1 bytes, line 911
911
912<script type="application/ld+json">
913{
914	"@context": "https://schema.org/",
915	"@type": "Organization",
916	"url": "https://world.openfoodfacts.org",
917	"logo": "https://static.openfoodfacts.org/images/logos/off-logo-vertical-light.svg",
918	"name": "Open Food Facts",
919	"sameAs" : ["https://www.facebook.com/OpenFoodFacts?utm_source=off&utm_medium=web", "https://x.com/OpenFoodFacts"]
920}
921</script>
921
922
923
924
925
926
927</body>
928</html>
929
930
931
932<!-- end templates/web/common/site_layout.tt.html -->

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.