Difference between revisions of "Student projects/GSOC/2017 ideas list"

From Open Food Facts wiki
Jump to navigation Jump to search
Line 70: Line 70:
 
Product Opener is open source, but we require contributors to ask for access to the code for security reasons: the code hasn't been properly audited yet. Your task will be to audit the code and proposes fixes as you find flaws.
 
Product Opener is open source, but we require contributors to ask for access to the code for security reasons: the code hasn't been properly audited yet. Your task will be to audit the code and proposes fixes as you find flaws.
  
'''Mentor:'''Stephane
+
'''Mentor:'''Stephane<br>
 
'''Language:''' Perl, Security background.
 
'''Language:''' Perl, Security background.
  

Revision as of 20:10, 14 February 2016

Here is the list of Open Food Facts proposed projects for the Google Summer of Code.
Any questions can be asked on the dedicated channel on Slack (https://openfoodfacts.slack.com/messages/summerofcode)

Projects common to Open Food Facts and Open Beauty Facts

Improve the Cross-platform mobile app

The Open Food Facts mobile app is the key component to contribute.The easier it is for contributors to contribute a product, the faster the base grows. This project is about turning the current Cordova app in a first class application, using all the latest bells and whistles to improve user experience and contributions.

Mentor:TBD
Language:Strong UX skills, good HTML and Javascript, good knowledge of Cordova and mobile development

Integrate a cloud-based OCR into Product Opener

  • Process all uploaded images proactively using Tesseract and/or the New Cloud based engine
  • Store JSON and return a processed version to mobile client and/or web client for suggestions to the user
  • Add support to search into OCR results
  • Create a mini-game to let users turn the Raw OCR into data

Mentor:Stéphane or Laurent
Language:Perl

Improve the edit workflow on mobile

Open Food Facts and Open Beauty Facts rely on crowdsourcing. The easier it is for contributors to complete a product, the faster the base grows. This project is about improving the contribution flow on the mobile app.

Mentor:Stéphane and Pierre
Language:Strong UX skills, good knowledge of Cordova, good HTML and Javascript

Improve the edit workflow online

Open Food Facts and Open Beauty Facts rely on crowdsourcing. The easier it is for contributors to complete a product, the faster the base grows. This project is about improving the contribution flow online.

Mentor:Stéphane and Pierre
Language:Strong UX skills, good HTML and Javascript, some knowledge of Perl

Create a power contribution tool

Open Food Facts and Open Beauty Facts rely on crowdsourcing. The easier it is for contributors to complete a product, the faster the base grows. This projects is about creating a standalone power-edit tool using the API

Mentor:depending on your tech choice
Language:Any web language (Rail, Python, Backend JS framework)

Create an Open Food Facts mobile game

Imagine a game where products would be useful items on your quest, and scanning them would unlock bonuses, Lifepoints… This is about creating a game that would be a fun way to discover more about food or cosmetics and/or contribute to Open Food/Beauty Facts.

Mentor:
Language: Java, Swift/ObjC or Web technologies (Cordova…)

Create a system to update taxonomies from Product Opener

Currently, we use a wiki based system for taxonomies, that we have to reload. This is error prone and requires maintenance work. This project would be about adding a system into product opener to let moderators define parent categories, add translations, wikidata links and various properties.

Mentor:Stephane or Laurent
Language: Perl, some HTML/JS

Make Product Opener able to show revisions

Food and cosmetics change over time. Nutrition info, ingredients sometimes slightly change. Our contributors are here to document all that using photos, and then update the product. Product Opener already stores basic changes, but once a product is edited, we can't see how it evolved over time. It would be tremendously interesting for nutrition science and contributors to be able to see how (positive) change happens over time.

Mentor:Stephane or Laurent
Language: Perl, some HTML/JS

Improve Bulk Import of images

We currently have a very basic system to bulk-import images and create products accordingly. The project would be to create a web interface for this system for contributors, with a way to recognize barcodes, sort images by timestamp/name/manually. A basic moderation system will ensure data quality.
The project will be tested with a massive trove of images that will be eventually imported into Open Food Facts if the project is successful.

Mentor:Stephane (mainly for the API and product-opener requirements)
Language: Your choice: will require both front and backend-skills.

Migrate Product Opener to GetText

Open Food Facts is a global project. We need it to be available in as many languages as possible. Currently we use a custom system that makes it complicated to translate Open Food Facts. Your task will be to make Product Opener use GetText, and migrate the current translations.

Mentor:Stephane + Pierre
Language: Perl. GetText knowledge a plus.

Pentest and audit the Product Opener codebase

Product Opener is open source, but we require contributors to ask for access to the code for security reasons: the code hasn't been properly audited yet. Your task will be to audit the code and proposes fixes as you find flaws.

Mentor:Stephane
Language: Perl, Security background.

Your own idea

You can of course propose your own great idea, as long as it's suitable in terms of workload with the requirements of the Summer of Code.


Open Food Facts specific projects

Create tooling to import all EU-packaging codes

EU packaging codes are those little logos on food that -once decyphered- will tell you where the product was packaged and produced. Unfortunately, the data comes in many formats (XLS, CSV, HTML, and yes, even PDF). This project is building on the basic Python script we have for 3 countries, and extend it to the rest of Europe. Bonus point if you add Fishing codes and Recyclable Paper codes to that. Mentor:Pierre
Language: Your language of choice. The current script is in Python

Create a connected microwave prototype

Create a connected fridge prototype

Create a smart bin prototype

Open Beauty Facts specific projects

Mentors

  • Name or pseudonym - Skills - Available time for mentoring
  • Add yourself !