gaelle gomez
– Voir la liste complète –

Oscillator

Un synthétiseur dans le navigateur

JavaScriptWeb Audio APInpmPugHTML5CSS3Gitlab

Instrument de musique modulaire et simple à partager. Ce projet fonctionne dans un navigateur et peut donc facilement être mis à disposition et multiplié. L’instrument peut être présenté sur une dalle tactile, pour permettre à plusieurs personnes de composer ensemble, ou encore être utilisé par plusieurs personnes chacune sur leur propre appareil.

  • Commandes globales : bouton d’activation de toutes les boucles et bouton de partage de composition
  • Boucles : de une à trois en fonction de la largeur de l’écran, chaque boucle est composée de sous-commandes et de pistes
  • Commandes de boucle : bouton de lecture, sélecteur de forme d’onde, sélecteur de tempo et bouton d’ajout de piste
  • Pistes : bouton d’extinction du son, LED qui indique la mesure, sélecteur de forme d’onde, sélecteur de note, sélecteur d’octave et bouton de suppression de la piste
  • Chargement d’une composition via les paramètres dans l’URL
  • À défaut, génération d’une composition aléatoire
  • Génération d’une URL pour partager la composition via le bouton de partage

link

Sonia Saroya

Migration site personnel

JavaScriptNode.jsnpmPugJSONHTML5LessCSS3Gitlab

Migration d’un site Wordpress vers un système simple et léger, fait sur mesure pour générer et faire évoluer le site personnel de l’artiste.

  • Préservation de la charte graphique
  • Création d’un système de grille léger et adapté aux souhaits de l’artiste
  • Conception d’un système de génération de contenu en Node.js, pug et JSON
  • Conception de scripts aux logs verbeux pour donner les indications nécessaires à l’artiste lors de la génération
  • Rédaction d’une documentation pour permettre à l’artiste d’alimenter le contenu de son site de manière autonome

link

Tapis de Sierpiński

Lente fractale

JavaScript

Léon Denise

Refonte site personnel

JavaScriptNode.jsnpmPugJSONHTML5LessCSS3Gitlab

Proposition d’une nouvelle identité graphique mettant en valeur les œuvres et l’univers de l’artiste et migration d’un site Wordpress vers un site statique.

  • Nouvelle charte graphique
  • Conception d’un système de génération de contenu en Node.js, pug et JSON
  • Hébergement et déploiement automatisé sur Gitlab

Arduino kalimba

Un échantillonneur bruyant

ArduinoC

Premier projet Arduino. Projet musical pensé pour créer des sons en harmonie. Inspiré du kalimba – aussi appelé mbira ou encore piano à pouces – instrument qui produit une mélodie agréable, peu importe les lamelles pincées, grâce à son accordage mélodieux.

  • Programme open source en C
  • Fonctionnalités : métronome, tempo réglable, lecture/pause, boucles enregistrables de 8 temps
  • Pour chaque piste : sélecteur de note, bouton d’enregistrement, bouton de lecture/pause
  • Manettes fabriquées à la main
  • Matériaux de récupération : mousse de transport, carton de céréales, reste de circuit imprimé, cuivre de câble d’alimentation
  • Composants : haut-parleur piezo, LEDs rouge et bleu, boutons, potentiomètres, résistances
  • Usage détourné : punaise, pinces d’architecte, agrafes

link

Ffrriiiaaanngglleee

Premier shader

GLSL

Cookie Collective

Proposition d’identité visuelle

HTML5CSS3

VJ lines

Cookie Demo Party

JavaScriptHTML5CSS3

Court métrage abstrait projeté lors d’une demo party, chorégraphie de lignes qui s’animent en rythme avec leur musique.

  • Programme exécuté en temps réel dans le navigateur web
  • Composition visuelle
  • Composition musicale

link

Ça pétille

Boids en canvas

JavaScriptHTML5CSS3

Petites formes dansantes, composées de cercles concentriques animés en pulsation, pulsation à la fois visuelle et sonore.

Golang trie

Construction d’un dictionnaire

Golang

Construction en Go d’un arbre préfixe à partir d’un fichier de mots et recherche d’un préfixe.


link

Fini le serveur dédié

Site hébergé et déployé automatiquement sur Gitlab

JavaScriptnpmPugJSONHTML5LessCSS3Gitlab
  • Transformation d’un site PHP MySQL hébergé sur un serveur dédié en site statique
  • Pug pour le templating, JSON pour les données, Tumblr pout l’hébergement des dessins
  • Hébergement et déploiement automatisé sur Gitlab avec npm pour lancer la génération du contenu

Tumblr populator

Scripts de gestion automatisée d’images sur Tumblr

TumblrGolang

L’objectif initial était de poster automatiquement des images sur Instagram cependant Tumblr se prête beaucoup mieux à l’utilisation souhaitée.

  • Hébergement gratuit et fiable de mes dessins
  • Prise en compte de la date de réalisation du dessin et non de la date de publication sur le site
  • Scripts Go de traitement, d’envoi et de suppression d’images
  • Scripts Go de génération de JSON listant l’ensemble des dessins hébergés sur Tumblr

POC serveurs PHP

POC API Silex et POC API PHP7

PHP7SilexMariaDBDoctrine DALPHPUnitDocker

Comparaison de Symfony 2 avec Silex et PHP7 sans bibliothèque.

  • API Silex : développement d’une solution qui offre les fonctionnalités essentielles, pour mettre en place rapidement un serveur et une base de données, tout en conservant une indépendance dans la manipulation de ces données
  • API PHP7 sans bibliothèque : développement d’un routeur et de managers d’objets de zéro, pour tester la lisibilité, la performance et la rapidité de mise en place

Ludicrime

API de contenu Facebook

FacebookJavaScriptNode.jsExpresslodashproxyquireSinon.JSJSHintMochaPugHTMLCSS3Less

L’objectif est d’utiliser le contenu publié sur la page Facebook de l’organisation, pour mettre à jour le contenu du site de l’organisation sans avoir à saisir plusieurs fois le même contenu, principalement concernant les événements. Facebook devient l’outil de gestion de contenu du site externe et ce site peut être migré du Wordpress existant vers une solution qui va automatiquement récupérer le contenu. Cette solution met en place une nouvelle charte graphique qui respecte l’identité graphique de l’organisation.

  • API de récupération de contenu d’une page Facebook
  • Test driven development – développements pilotés par les tests
  • Site statique utilisant cette API, avec une charte graphique qui respecte l’identité visuelle de l’organisation et une grille personnalisée de contenu

React typing of the dead

The typing of the dead en React

JavaScriptReactHTMLCSS3

Hommage au jeu vidéo The Typing of the Dead, jeu qui reprend l’univers du jeu de tir à la première personne The House of the Dead, en remplaçant le tir par des mots à taper le plus rapidement possible pour abattre les zombies. Ce jeu était l’occasion de tester React.


link

developer.dial-once.com

Identité visuelle

HTMLCSS3Less

Dodge bitch dodge

Jeu plates-formes 2D réflexe multi-joueurs en ligne

JavaScriptWebGLNode.jsWebSocketGruntHTMLCSS3

Le joueur incarne un personnage abstrait qui évolue dans un univers en mouvement. Le personnage doit survivre en se déplaçant dans un espace vu de dessus. Pour rester en vie le plus longtemps possible, il faut éviter les obstacles générés aléatoirement, obstacles aux mouvements qui changent aussi aléatoirement de direction, de sens et de vitesse. Tout ceci étant généré côté serveur, les joueurs connectés jouent dans un espace identique, ils se voient les uns les autres et voient aussi le meilleur temps de chacun.

  • Interface responsive avec écran de jeu en WebGL
  • Calcul et vérification en temps réel via WebSocket sur un serveur Node.js
  • Développement objet JavaScript ES5

link

Gagris

Tetris en JavaScript

JavaScriptjQueryHTMLCSS3

Tetris adaptatif en JavaScript et HTML qui s’intègre facilement dans une application mobile.

  • Héritage JS ES5 : une classe JS par tetromino (J, L, O, T, I, S et Z) qui hérite de la classe mère Tetromino
  • Aucune image : boutons et logo en svg et tetrominoes en div
  • Responsive : création d’un style qui s’adapte à la taille et l’orientation de l’écran complètement en CSS (Less)
  • Performance : debug et optimisation pour mobiles d’entrée de gamme
  • Deux modes de jeu : normal et avec projection de la trajectoire du tetromino

Push the BUTTON!

Runner de 1 à 4 touches

CPPSFML

Runner 2D dans lequel il faut éviter des obstacles au sol et au plafond en sautant au bon moment. Le joueur choisit de jouer avec 1, 2, 3 ou 4 touches. Chaque touche contrôle un avatar qui évolue dans son propre périmètre avec ses obstacles propres. À ce mécanisme s’ajoutent des bonus et malus : accélération, ralentissement et everybody move en référence au jeu ChuChu Rocket.

  • Concept simple
  • Design épuré avec rendu visuel et sonore (parallaxe, ralentissement et accélération du défilement et du son...)
  • Développement du jeu en C++ avec SFML 2.1
  • Réutilisation de la musique composée pour le premier Push the BUTTON!

GGJ Gallery

Galerie des photos prises pendant le Global Game Jam

PHPJavaScriptjQueryAJAXHTML5CSS3

They are following me

Algorithme de poursuite

CPPSFML

Des formes rappelant des créatures sous-marines se déplacent sur trois niveaux de profondeur. Elles sont attirées par notre curseur et le suivent, sauf lorsqu’une zone de révulsion est activée en pressant le bouton gauche.

Snake JS

Jeu de snake en JavaScript

JavaScriptjQueryHTML5CSS3

Shadow Catacombs

Jeu plates-formes 2D réflexe

Unity 3DC#

Le joueur doit s’échapper des catacombes piégées d’un château en déplaçant son avatar indirectement, grâce à des plates-formes rebondissantes qu’il dessine à la volée. Chaque type de piège est associé à une musique identifiable et spatialisée. L’ambiance musicale se compose ainsi en fonction de la position du joueur dans le niveau, dans un univers graphique sombre contrasté par une ambiance sonore très douce.

I used to be a square

Expérience de frustration

CPPSFML

Ce projet est né d’une contrainte : trouver un concept de jeu dans lequel des éléments de l’univers se modifient indépendamment de l’intervention du joueur. Inspiré du livre Je suis une légende de Matheson, ce jeu de shoot représente un carré face à la transformation progressive de la société en triangles. Le joueur est un carré encerclé par d’autres carrés et quelques trianges. Lorsqu’il tue un triangle, son score augmente, lorsqu’il tue un carré, son score diminue. Le joueur comprend qu’il doit éliminer ce qui est différent de lui. Cependant, à chaque niveau, la proportion de triangles augmente, jusqu’à ce que les carrés disparaissent complètement. Le sentiment de frustration est accentué par une ambiance sonore oppressante et des transitions graphiques hypnotiques.

Push the BUTTON!

Jeu musical

CPPSFML

Quatre lignes musicales, formant une musique, chacune représentée par une couleur et un animal aux yeux exhorbités. Chaque ligne musicale correspond à une jauge que le joueur doit remplir au niveau demandé. Le multiplicateur augmente à chaque fois qu’on atteint l’objectif dans les temps et retombe à 1 si on le manque. Plus le niveau de difficulté augmente, plus le nombre de jauges augmente.

Écrasage de fourmis

Jeux d’écrasage de fourmis

CPPSDLJavaScriptjQuerySVGHTML5CSS3

Ces deux projets, l’un en C++ avec SDL et l’autre en JavaScript, mettent en scène des fourmis qui se déplacent dans un cadre et changent aléatoirement de direction et de sens. Le but est d’écraser le plus grand nombre de fourmis dans le temps imparti.

Smut

Moteur physique 2D simple

CPPSDL

Rectangle Invaders

Reproduction simplifiée de Space Invaders

CPPSDL

Remplissage

Algorithmes de remplissage.

CPPSDL

Reviews&Ko

Site de critiques et d’actualités du jeu vidéo

PHP5MySQLJavaScriptjQueryHTML5CSS3

Système de gestion de contenu développé de zéro.

  • Contenu visible par tous les visiteurs
  • Création sécurisée de compte donnant accès aux fonctionnalités de rédaction de commentaires et de notation
  • Utilisateurs rédacteurs avec un accès à la fonctionnalité de rédaction des articles
  • Utilisateurs administrateurs avec un accès à la fonctionnalité de gestion des utilisateurs

My Pet

Simulation de vie

PHP5JavaScriptHTMLCSS3

Prendre soin d’un animal de compagnie n’est pas si simple. Même avec les meilleures intentions, son chat ou son mille-pattes peut se blesser ou tomber malade. Il faut donc être attentif.

CuniCuli

Simulation de vie

PHP5JavaScriptHTMLCSS

Un lapin tente de trouver son équilibre dans un système caricatural, dans lequel les personnes dans la misère sont tenues pour responsables de leur situation et sont accusées de profiter du système.