Giter Site home page Giter Site logo

mielpopscrew / devoxxfr-2018-pwa Goto Github PK

View Code? Open in Web Editor NEW
7.0 6.0 2.0 686 KB

Progressive Web App dédiée à la Devoxx France 2018

Home Page: http://devoxx2018-pwa.firebaseapp.com/

License: GNU General Public License v3.0

TypeScript 93.29% JavaScript 0.64% HTML 3.25% CSS 2.82%
progressive-web-app angular devoxx devoxx-fr-2018 schedule pwa

devoxxfr-2018-pwa's Introduction

Devoxx FR 2018 - PWA

Présentation

Cette Progressive Web App est dédiée à la Devoxx France 2018. Elle permet de :

  • Consultez le planning des 3 jours ainsi que le détail des événements
  • Bookmarkez les conférences que vous ne voulez pas louper et retrouvez-les dans un planning dédié également disponible offline
  • Consultez la liste des intervenants afin d'en apprendre d'avantage sur les différents événements

Cadre du projet

Devoxx FR 2018 est une application dévelopée par trois apprentis ingénieurs en informatique en dernière année à Polytech' Paris-Sud dans le cadre de la matière "Algorithmes pour le Web".

Le sujet du projet était de créer une Progressive Web App utile. L'un d'entre nous participant à l'événement cette année, nous avons choisi de créer une application autour de l'API de l'événement Devoxx 2018 de Nicolas Martignole.

L'application a été développée grâce au framework Angular 5 en quelques jours. Il reste quelques évolutions à implémenter, du code à structurer ainsi que quelques logiques à mettre en place.

Installation

Pour déployer ce projet, deux solutions :

  • télécharger la dernière release
  • builder depuis les sources

Builder le projet

Les commandes suivantes permettent d'installer les dépendances et builder le projet :

npm install -g @angular/cli # installation d'Angular
npm install # installation des dépendances issues du package.json
ng build --prod # build du projet avec Service Workers actifs (mécanisme de cache)

Lancer le projet en local

Si vous avez buildé le projet depuis les sources, rendez-vous dans le dossier dist. Sinon, extrayez l'archive release.

Pour lancer le projet sur un environnement local, http-server est requis :

npm install -g http-server

On lance le serveur web et on accède à localhost:8080

http-server

Déployer le projet sur un serveur

Si vous souhaitez déployer le projet sur un environnement de production (notamment avec un nom de domaine), téléchargez les sources du projet puis éditez le fichier fix-sw.js et changez l'URL indiquée par l'URL cible. Buildez le projet puis exécutez ce script (node fix-sw.js) avant de lancer le serveur HTTP.

Un petit coup de main ?

L'application s'adresse à vous, des personnes qui auront certainement un mot à dire. Que ce soit à propos de l'ergonomie, de l'architecture, du code ou encore des algorithmes, nous communiquer vos retours sera la meilleure façon de nous aider. Dans l'optique de monter en compétence nous serons ravi d'écouter vos retours ou vos idées !

Dans tous les cas, nous vous attendons sur le GitHub du projet ;)

Authors

Remerciements

Pour ses bons conseils, son encadrement et son dynamisme, nous adressons nos remerciements à Tony Amirault notre profresseur pour ce cours.

Egalement, remerciements à Nicolas Martignole pour la disponibilité de l'API :)

devoxxfr-2018-pwa's People

Contributors

cottinthomas avatar leodonny avatar omnisnash avatar tcottin-spectrumgroupe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

devoxxfr-2018-pwa's Issues

Navigation "lost" when going from talk to planning

Hello,

Great job! Thanks to you I will have my Devoxx planning in my pocket next week :)

However when I was browsing from my mobile I realised something kind of anoying:

  1. Go to planning
  2. Switch the day (do not stay on mercredi)
  3. Click on any talk
  4. Press back
  5. You are lost: not on the day you selected, the scrolls (horizontal and vertical have changed...)

Mixed-Content sur la page Speaker

Bonjour,

Sur la page speakers, Il y a un problème de "Mixed-Content" à cause des avatars chargés en HTTP.

Cela semble venir de l'API utilisée, qui stocke des URL HTTP, pour des images pourtant également disponible en HTTPS

Loading mixed (insecure) display content “http://www.gravatar.com/avatar/493f5803d30d7583bf1bdf4b237b9186” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/997433f165140d58f52b8c0d1d005dc1” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/79dc5d13bab6d382ae346ecbb0b9876a” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/04e3a46efd2e243319b1bf9f7ef316f7.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/2bacdce483ae07e586c9593312c8dad4.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/5b92e03bac449d0fffb89c6d89e2b740” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/b065a13ca7ed7cfe3bc013c16c19ac57.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/feafd853f08b4d704406c6dd0f255cf8” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/d4e60024c0f6cba6a076bc41bf481024” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/9d09f05d50ce6624040126d9eaf727b8” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://berthelot.surge.sh/Florent-DSC_0047.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://blog.docker.com/media/20141204_DockerCon-Thursday_102-7907.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/95c3dd6b6009492e9e1380d94f23d533” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://gravatar.com/avatar/df747935bec069aee97b9fcd124fc7c3” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/e82283817781e715e9948f18ecce7951” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/686399bd630ecc9381e4dfec8720816e” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/128b45157a37ef858a763f4cd9ae17f6” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/a10b7083787368433bfecba948aa3f43” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/422304dc5c24f5b91234052347770cb7.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/e30157bd7bdaa6a8488d35d668bcb94d” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/2dc0b5b60a491ae78d8024210506e2ae” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/7c000dd67d84f593b6fe5c39900824e1” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/ffc0aff54d98b1deeb2192abcfaf389f” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/6a63e0a790f9ff8bc753ddae45c6834f” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/01357143fb88a3095a47794624b4eb30” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/0cb9c716b0428039cb2fe101aa79c827” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://zemljasnova.net/vladimir_a.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.joellephotographie.com/assets/images/alexstudio122012-001.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/505b92f0f422152656b53018929316f4” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://cltdl.fr/me/assets/profile2.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://gravatar.com/avatar/1934ffa11308e60bff5ee35a54adc74b?size=200” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/52449e52ef11520931f3c0cce5382662” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.doyoubuzz.com/var/users/_/2010/8/30/21/63233/avatar/59894/avatar_cp_630.jpg?t=1486469975?1486469981625” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.dicosmo.org/Library/Images/dicosmo_small.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/4a0c78184b3faad9c61cb851c604bf93” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/ffa96040bb4211cad1c66f385d8cb77b?s=300” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/70e5826f025e2bcbf38fba1a391cb4ea” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/b0e83b3513cd83454b3404662106a6e9” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/f0887bf6175ba40dca795eb37883a8cf?s=1024” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://blog.garnier.wf/assets/profile_dgarnier.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/5a84b4ae3ca6e73ec9b314ffd7b73fd3” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/9aa55525a15457e227af8e46edc9de17” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/67b8db0649986e2b3c5fd6ef7e9bc71a?size=300” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/59c2e63bacfa91831d36c7525b71c26c” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/9c47047fb0f6a3f0059ed760bcdfa1e3” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://static9.viadeo-static.com/servlet/photo?memberId=0022b02ewtqvt8aq&height=210&width=160&ts=1261116623000” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/820eb9ea97a575a59b0db0a3ddf72780” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/36d60f8923e4e8bda2ac7874718ae167” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.grodziski.com/img/JeremieGrodziski-portrait-218px-248px.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/9912fc8486e9caf4b7b02f7e6da40a43” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/c44c5f06333559a420d8283105b2feff” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/71012cb8bfc5382943c202690e3562a8” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/9dec3dd95fe76a6719fae939b368d1a5.png?s=256” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/a1acb9660b239024f9483d43981c7319” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/ca9800fc6cacd919e7dbef9676e2c5f1” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/add8ecbfb00acbe80991dd1570f57002.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/8df8e2191e13f58ba5c74a4548e3f0e7” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/ed6cea6df7901d44f71b2820e921ecba” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://raphael-lemaire.com/blog/wp-content/uploads/2014/04/D9k8K4Ls_400x400.jpeg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/34fe9578c98748263731073b5013cb07” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/fb22593caf24e4bb4c98d467cdd247e6” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.romainlouvet.fr/images/lbc.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://wp.aurelien-loyer.fr/upload/moi-64x64.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/f296110453a0d4490ebeedc02a692360” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.touilleur-express.fr/wp-content/uploads/2015/12/nicolas_martignole_captain_dash-e1450559996560.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/51dec3feb906404b8564a3c31d1050f3” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/0b17060fd5b56172e81e4bfbbcb438e0” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/cb4ea460417128ba3bead6a056ad07b3” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://barkbay.github.io/moi2.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/7e357ae5b0366a29f1f54434791ddefd” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/831ef51c4d1553158e44c4042ed35030” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/1649b733c3dd061433bb1dfb664c71f3.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/70c847e72b2d961ae15362ddd4dda79b?s=75” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/d626d8946597c5926e3b9d12d22597f5” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/20049a614b7f6838dc87b4bc39c42079” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/a81dbf1fb4b7462db859bbf47fb0c0f3” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/5d8045e529eadea2beb9a1b7f609198e” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/5445ea0a1c133f2a47864ca0766d9071” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/3d73332968c0bf62e1ece7299deb8b37.png” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/f4fd99ba365026782163a37fc5475207” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/0f6ba088487173d8506401eac7f5e8ed” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/fc042d7a1f879a15362117e5b5fb36c2” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/8a055e00e0e10b5ec2670fb956bade92” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/c5a74bfd51aca18795e8889278a077e7” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/9a034f987cc1e44dd51fd17133974623” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/6b8c593c2bc9506310b75ca625dfe375” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/0af26a63ae857f1835c760547afb3f9b” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/cb52062fbd7e159b54e3c298d622fe72” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/e33c04308507d8a2842cbb2a80ea4c20” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://www.gravatar.com/avatar/784ea1f3221b64804e728b9f029512a8” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://stephane.epardaud.fr/StephaneEpardaud.jpg” on a secure page[Learn More]
main.dff00ce5c7cc9f9b21d8.bundle.js:1:278022
Loading mixed (insecure) display content “http://centromere.free.fr/me.png” on a secure page[Learn More]
speakers
Loading mixed (insecure) display content “http://static8.viadeo-static.com/-zfm9VRpKUAzCx836s2bw4PCt9s=/160x210/smart/member/0022b02ewtqvt8aq?ts=1261116623000” on a secure page[Learn More]
speakers

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.