Giter Site home page Giter Site logo

oracle-of-bacon-1's Introduction

Oracle of Bacon

Présentation

L'objectif de l'application est de déterminer le degré de séparation entre Kevin Bacon et un acteur donné via ses rôles dans les films.

Par exemple : Al Pacino

  • Al Pacino a joué dans Carlito’s Way avec Nelson Vasquez
  • Nelson Vasquez a joué dans The Guiding Light avec Kevin Bacon

Les modules

Le projet est réparti en deux modules :

Pour démarrer

Pour lancer le projet démarrez deux terminaux et positionnez-vous dans ce répertoire :

cd <path to directory oracle-of-bacon>

Dans le premier, lancez le frontend :

cd oracle-of-bacon-frontend
npm install
npm run dev

Dans le second, lancez le backend :

cd oracle-of-bacon-backend
./gradlew run

Rendez-vous sur a page http://localhost:8080.

Pour la suite du projet, nous vous conseillons d'importer le backend dans votre IDE/éditeur préféré. Sauf désir de créativité 😃, vous n'avez rien à faire dans le front-end.

Le data set

Les données sont des données qui proviennent de imdb, le dataset est disponible ici : http://bit.ly/imdbdataset

Votre mission

Le site a été bouchonné (cf TODO), vous devez effectuer les tâches suivantes :

  • Importer les données dans Neo4J à l'aide de l'outil d'import : ìmport-tool.
  • Implémenter l'Oracle de Bacon à l'aide de Neo4J dans la méthode com.serli.oracle.of.bacon.repository.Neo4JRepository#getConnectionsToKevinBacon
  • Implémenter la gestion du last 10 search à l'aide de Redis dans la méthode com.serli.oracle.of.bacon.repository.RedisRepository#getLastTenSearches
  • Importer les données à l'aide de ElasticSearch dans com.serli.oracle.of.bacon.loader.elasticsearch.CompletionLoader (les liens suivants pourront vous aider : search, mapping et suggest)
  • Implémenter la suggestion sur le nom des acteurs dans com.serli.oracle.of.bacon.repository.ElasticSearchRepository#getActorsSuggests
  • Implémenter la recherche des acteurs par nom à l'aide de MongoDB dans com.serli.oracle.of.bacon.repository.MongoDbRepository#getActorByName (PS : les données utiles à la recherche des acteurs sont celles importées lors de l'étape mongodb-102)

L'évaluation de votre travail sera effectuée selon les critères suivants :

  • Bon fonctionnement (First make it work)
  • Qualité de la solution implémentée (Then make it good)
  • Qualité générale de votre code (et de vos commits, il ne faut pas pousser 😃)

La livraison de votre travail s'effectue à l'aide d'une pull-request sur le repository https://github.com/nosql-bootcamp/oracle-of-bacon.

Vous devez commencer par forker le repository https://github.com/nosql-bootcamp/oracle-of-bacon

⚠️ Si vous êtes sur Windows, il peut y avoir des problèmes au lancement du frontend. Si cela se produit, il faut désactiver eslint. Pour cela, dans le fichier oracle-of-bacon-frontend/build/webpack.base.conf.js, il faut supprimer

  • les lignes 36 à 49
preLoaders: [
     {
       test: /\.vue$/,
       loader: 'eslint',
       include: projectRoot,
       exclude: /node_modules/
     },
     {
       test: /\.js$/,
       loader: 'eslint',
       include: projectRoot,
       exclude: /node_modules/
     }
   ],
  • les lignes 83 à 85
eslint: {
  formatter: require('eslint-friendly-formatter')
},

oracle-of-bacon-1's People

Contributors

sebprunier avatar guillaumesoldera avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.