422 lines
No EOL
24 KiB
TypeScript
422 lines
No EOL
24 KiB
TypeScript
import react from 'react'
|
||
import Timeline from './timeline/Timeline'
|
||
import TimelineElement from './timeline/TimelineElement'
|
||
import TimelineLabel from './timeline/TimelineLabel'
|
||
import TimelineCard from './timeline/TimelineCard'
|
||
import TimelineCardSummary from './timeline/TimelineCardSummary'
|
||
import TimelineCardContent from './timeline/TimelineCardContent'
|
||
import Tag from './Tag'
|
||
import ProjectList from './project/ProjectList'
|
||
import ProjectElement from './project/ProjectElement'
|
||
import Link from './Link'
|
||
|
||
// Lang
|
||
const RUST_TAG = <Tag name="Rust" url="https://www.rust-lang.org/" />
|
||
const JAVA_TAG = <Tag name="Java" url="https://www.java.com/fr/" />
|
||
const CPP_TAG = <Tag name="C++" url="https://isocpp.org/" />
|
||
|
||
// Other
|
||
const REACT_TAG = <Tag name="React" url="https://fr.legacy.reactjs.org/" />
|
||
const SYMFONY_4_TAG = <Tag name="Symfony" url="https://symfony.com/" />
|
||
const FLUTTER_TAG = <Tag name="Flutter" url="https://flutter.dev/" />
|
||
const RUBY_ON_RAILS_TAG = <Tag name="Ruby on rails" url="https://rubyonrails.org/" />
|
||
const HOTWIRED_TAG = <Tag name="Hotwired" url="https://hotwired.dev/" />
|
||
const DOCKER_TAG = <Tag name="Docker" url="https://www.docker.com/" />
|
||
const STEAM_TAG = <Tag name="Steam API" url="https://partner.steamgames.com/doc/sdk/api/example" />
|
||
const GITLAB_CI_TAG = <Tag name="Gitlab CI" url="https://docs.gitlab.com/ee/ci/" />
|
||
const UNITY_TAG = <Tag name="Unity 3D" url="https://unity.com/fr" />
|
||
const WORDPRESS_TAG = <Tag name="Wordpress" url="https://wordpress.com/fr/" />
|
||
const CORDOVA_TAG = <Tag name="Cordova" url="https://cordova.apache.org/" />
|
||
const ELECTRON_TAG = <Tag name="Electron" url="https://www.electronjs.org/" />
|
||
const LWJGL_TAG = <Tag name="LWJGL" url="https://www.lwjgl.org/" />
|
||
const OPENGL_TAG = <Tag name="OpenGL" url="https://www.opengl.org/" />
|
||
const VULKAN_TAG = <Tag name="Vulkan" url="https://www.vulkan.org/" />
|
||
const MIDI_TAG = <Tag name="MIDI" url="https://fr.wikipedia.org/wiki/Musical_Instrument_Digital_Interface" />
|
||
const REQUIREJS_TAG = <Tag name="RequireJS" url="https://requirejs.org/" />
|
||
const WEBPACK_TAG = <Tag name="Webpack" url="https://webpack.js.org/" />
|
||
const VITE_TAG = <Tag name="Vite" url="https://vitejs.dev/" />
|
||
const MAVEN_TAG = <Tag name="Maven" url="https://maven.apache.org/" />
|
||
const GRADLE_TAG = <Tag name="Gradle" url="https://gradle.org/" />
|
||
const BABYLONJG_TAG = <Tag name="BabylonJS" url="https://www.babylonjs.com/" />
|
||
const ROCKET_RS_TAG = <Tag name="Rocket" url="https://rocket.rs/" />
|
||
const ACTIX_WEB_TAG = <Tag name="Actix Web" url="https://actix.rs/" />
|
||
|
||
|
||
function MonParcours() {
|
||
return (
|
||
<div>
|
||
<Timeline>
|
||
<TimelineElement>
|
||
<TimelineLabel>2019 - Aujourd’hui</TimelineLabel>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
REACT_TAG, SYMFONY_4_TAG, FLUTTER_TAG, RUBY_ON_RAILS_TAG, HOTWIRED_TAG, RUST_TAG, WEBPACK_TAG, VITE_TAG, GRADLE_TAG
|
||
]}
|
||
>
|
||
Développeur d’application Web, Mobile et Système (CDI)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Développement d’application Symfony, React, Flutter, Rust et Ruby on rails (6 et 7) pour des clients.</p><br />
|
||
<p>Je développe surtout des applications Flutter et Ruby on rails avec l’aide de Hotwired.</p><br />
|
||
|
||
<i>Unova France</i><br />
|
||
<i>11 Septembre 2019 - Toujours en CDI</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
RUST_TAG, VULKAN_TAG
|
||
]}
|
||
>
|
||
Développement 3D (Perso)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Je développe un petit moteur 3D pour apprendre à utiliser Vulkan, mais aussi pour prendre en expérience en Rust</p><br/>
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
description="Projet pour apprendre"
|
||
url='https://github.com/mrdev023/RustGameMicroEngine'
|
||
/>
|
||
<ProjectElement
|
||
description="Le but, refaire mon vieux projet de voxel pour progresser en Rust et Vulkan"
|
||
url='https://github.com/mrdev023/voxel_rust_test'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
RUST_TAG, ROCKET_RS_TAG, ACTIX_WEB_TAG
|
||
]}
|
||
>
|
||
Développement Web en Rust (Perso)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Je teste quelques technologies Web en Rust</p><br/>
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
description="Projet de test Rocket"
|
||
url='https://github.com/mrdev023/Rust-Rocket-Project'
|
||
/>
|
||
<ProjectElement
|
||
description="Projet de test actix"
|
||
url='https://github.com/mrdev023/rust-actix'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
RUST_TAG
|
||
]}
|
||
>
|
||
Développement d’un outil d’accès serveur sécurisé en Rust (Perso)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Le but du projet était de proposer un programme en tant que shell et de vérifier la connexion entrante avec un Service dédié.</p><br/>
|
||
<p>L’ensemble des sessions étaient enregistrées pour permettre à n'importe qui de savoir ce qui s'est passé.</p><br/>
|
||
<p>Les administrateurs pouvaient également gérer les connexions avec une ligne de commande.</p><br/>
|
||
|
||
<i>Le projet a été abandonné au profit de <Link url="https://github.com/ovh/the-bastion">The Bastion</Link></i>
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
description="Github du projet"
|
||
url='https://github.com/mrdev023/command_gateway'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
</TimelineElement>
|
||
<TimelineElement>
|
||
<TimelineLabel>2018 - 2019</TimelineLabel>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
UNITY_TAG, SYMFONY_4_TAG, GITLAB_CI_TAG, STEAM_TAG, DOCKER_TAG, MIDI_TAG
|
||
]}
|
||
>
|
||
Développeur Web et d’application 2D (CDI)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Développement du Site en Symfony 4 (Changement graphique, ajout de fonctionnalité)</p><br />
|
||
<p>Intégration du déploiement continue de la nouvelle application Limouzik refaite sous Unity 3D sur Steam</p><br />
|
||
|
||
<i>Limouzik SAS</i><br />
|
||
<i>03 Septembre 2018 - 31 Juillet 2019 (Rupture pour raison économique)</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
UNITY_TAG
|
||
]}
|
||
>
|
||
Global Game Jam édition 2019 (Concours)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Participation au Global Gam Jam édition 2019.</p><br />
|
||
<p>Le but du concours est de developper un Jeu en 48h à partir d’un thème donné au départ du concours.</p><br />
|
||
|
||
<i>3iL - Limoges</i><br />
|
||
<i>25 janvier - 27 janvier</i><br />
|
||
<i>Thème : What home means to you</i><br />
|
||
<i>Participants : Ezyrath, Fabien87, Flavien, MrDev023 (Moi), php4ever, spoutnik87</i><br />
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
image_src="https://github.com/mrdev023/Global-Game-Jam-2019/blob/master/ggj_2019_maison.png?raw=true"
|
||
description="Cauchemar en forêt"
|
||
url='https://github.com/mrdev023/Global-Game-Jam-2019'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
</TimelineElement>
|
||
<TimelineElement>
|
||
<TimelineLabel>2017 - 2018</TimelineLabel>
|
||
<TimelineCard>
|
||
<TimelineCardSummary>License Dev. Web et du Big Data</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Licence professionnelle en alternance de développeur d’application web et du Big Data (LP DWBD).</p><br />
|
||
<p>Utilisation de docker, Mysql, PHP avancé, Symfony 3 et 4, AngularJS, NodeJS, Cassandra, MongoDB, …</p><br />
|
||
|
||
<i>IUT du Limousin à Limoges</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
SYMFONY_4_TAG
|
||
]}
|
||
>
|
||
Développeur Web (Projet Tuteuré)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Développement du site sliz.me avec Symfony 4.</p><br />
|
||
<p>Ajout de QRCode sur l'ensemble des pages d'un fichier PDF pour que d'autres personnes puissent télécharger le PDF ou une page en question durant une conférence.</p><br />
|
||
<p>Il fallait également pouvoir générer des QrCode simple à scanner pour qu’un étudiant puisse le scanner à l’autre bout de l’amphi.</p><br />
|
||
|
||
<i>Onegate</i><br />
|
||
<i>Octobre 2017 - Février 2017</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
UNITY_TAG, SYMFONY_4_TAG, STEAM_TAG, REACT_TAG, WORDPRESS_TAG, CORDOVA_TAG, ELECTRON_TAG, MIDI_TAG, WEBPACK_TAG
|
||
]}
|
||
>
|
||
Développeur Web et d’application 2D (Alternance)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Maintenance de la version du site en Wordpress + Refonte complète du site (Graphique et technique) avec Symfony 4.</p><br />
|
||
|
||
<p>Maintenance de la première version de l’application React ainsi que la migration des modules RequireJS vers Webpack pour fortement améliorer le temps de chargement</p><br />
|
||
<p>Pour permettre l’évolution future de l’application (Intégration avec d’autre boite de jeu VR + Gamification), l’application a dû être refaite de A à Z en C# avec le moteur 3D Unity.</p><br />
|
||
<p>Ajout de l’application Limouzik sur le Play Store (Android), AppStore (iOS) et sur Steam (PC) avec l’intégration de SteamAPI</p><br />
|
||
|
||
<i>L’ensemble du travail a été effectué par mes soins</i><br /><br />
|
||
|
||
|
||
<i>Limouzik SAS</i><br />
|
||
<i>04 Septembre 2017 - 24 Aout 2018</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
OPENGL_TAG, JAVA_TAG
|
||
]}
|
||
>
|
||
Global Game Jam édition 2017 (Concours)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Participation au Global Gam Jam édition 2017.</p><br />
|
||
<p>Le but du concours est de developper un Jeu en 48h à partir d’un thème donné au départ du concours.</p><br />
|
||
|
||
<i>3iL - Limoges</i><br />
|
||
<i>20 janvier - 22 janvier</i><br />
|
||
<i>Thème : Waves</i><br />
|
||
<i>Participants : emiko, Fiesta87, MrDev023 (Moi), TheKitolex</i><br />
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
description="Beach Fighter"
|
||
url='https://github.com/mrdev023/Global-Gam-Jam-2017/'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
</TimelineElement>
|
||
<TimelineElement>
|
||
<TimelineLabel>2015 - 2017</TimelineLabel>
|
||
<TimelineCard>
|
||
<TimelineCardSummary>DUT Informatique</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Conception de programme en Java, C++, C, Android, PHP, NodeJS et l’utilisation de Mysql. Apprentissage des bases scientifiques dans l’informatique.</p><br />
|
||
<i>IUT du Limousin à Limoges</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
REACT_TAG, WORDPRESS_TAG, MIDI_TAG, REQUIREJS_TAG
|
||
]}
|
||
>
|
||
Développement d’application Web + Site (Stage + CDD)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Développement d’une application musicale en utilisant le protocole MIDI (+ Synthèse sonore).</p><br />
|
||
<p>La partie affichage a été développé avec React et RequireJS (Gestion de module).</p><br />
|
||
<p>Administration du Site en Wordpress avec les Plugins (Woocommerce et PaidMembership Pro) ainsi que le développement d’un plugin propriétaire pour l’intégration de l’application dans Wordpress</p><br />
|
||
|
||
<i>Limouzik SAS</i><br />
|
||
<i>03 Avril 2017 - 30 Juin 2017 (Stage)</i><br />
|
||
<i>01 Juillet 2017 - 31 Juillet 2017 (CDD)</i>
|
||
</TimelineCardContent>
|
||
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
OPENGL_TAG, JAVA_TAG
|
||
]}
|
||
>
|
||
Global Game Jam édition 2016 (Concours)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Participation au Global Gam Jam édition 2016.</p><br />
|
||
<p>Le but du concours est de developper un Jeu en 48h à partir d’un thème donné au départ du concours.</p><br />
|
||
|
||
<i>3iL - Limoges</i><br />
|
||
<i>29 janvier - 31 janvier</i><br />
|
||
<i>Thème : Ritual</i><br />
|
||
<i>Participants : Aliths, dikaios, Fiesta87, MrDev023 (Moi), TheKitolex</i><br />
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
image_src="https://github.com/mrdev023/Global-Game-Jam-2016/blob/master/ggj_into.png?raw=true"
|
||
description="Bifrost Saver's"
|
||
url='https://github.com/mrdev023/Global-Game-Jam-2016'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
BABYLONJG_TAG
|
||
]}
|
||
>
|
||
Nuit de l’info édition 2016 (Concours)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Participation à la Nuit de l’info édition 2016.</p><br />
|
||
<p>Le but de ce concours était de développer un projet WebGL en 8h.</p><br />
|
||
|
||
<i>Bordeaux</i><br />
|
||
<i>1 Décembre 2016 - 2 Décembre 2016</i><br />
|
||
<i>Sujet : Venir en aide aux réfugiés</i><br />
|
||
<i>Nom de l’équipe : echo "Avis de template"</i><br />
|
||
<i>Slogan : Qui sème le vent récolte le Template</i><br />
|
||
<Link url="https://www.nuitdelinfo.com/nuitinfo/defis2016:archives#defi12">WebGL : 1er</Link>
|
||
<Link url="https://www.nuitdelinfo.com/nuitinfo/defis2016:archives#defi38">Méthode agile : 1er</Link>
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
description="Github du projet"
|
||
url='https://github.com/mrdev023/NUIT_INFO_2_DECEMBRE_2016'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
OPENGL_TAG, CPP_TAG
|
||
]}
|
||
>
|
||
Utilisation de l’API graphique OpenGL (Perso)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Après avoir appris à faire de l’OpenGL en Java , j’ai voulu tester en C++</p><br />
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
description='Petit projet OpenGL en C++'
|
||
url='https://github.com/mrdev023/MrDev023-Cpp-Engine'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
</TimelineElement>
|
||
<TimelineElement>
|
||
<TimelineLabel>2012 - 2015</TimelineLabel>
|
||
<TimelineCard>
|
||
<TimelineCardSummary>Bac STI2D spécialité SIN</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Passage du Bac sciences et technologies de l’industrie et du développement durable (STI2D).</p>
|
||
<p>Spécialité systèmes d’information et numérique (SIN).</p><br />
|
||
|
||
<i>Lycée Jean Favard à Guéret</i>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
JAVA_TAG, MAVEN_TAG
|
||
]}
|
||
>
|
||
Développement en Java (Perso)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Apprentissage dans un premier temps du langage avec le site du zéro et les quelques vidéos sur Youtube.</p><br />
|
||
<p>Ensuite, j'ai commencé à développer des projets Perso (Plugin Minecraft, Mod Minecraft) dans un premier temps.</p><br />
|
||
<p>Puis, j'ai commencé à développer des petits jeux de A à Z (Petit moteur de physique + graphique + audio) et à m'entrainer avec des amis pour participer à des concours comme le Ludum dare et la Global Game Jam.</p>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
<TimelineCard>
|
||
<TimelineCardSummary
|
||
tags={[
|
||
LWJGL_TAG, OPENGL_TAG, JAVA_TAG
|
||
]}
|
||
>
|
||
Utilisation de l’API graphique OpenGL (Perso)
|
||
</TimelineCardSummary>
|
||
<TimelineCardContent>
|
||
<p>Après avoir développé quelques trucs sur Minecraft. Je me suis interessé à son fonctionnement et j'ai découvert la librairie LWJGL utilisé dans Minecraft.</p><br />
|
||
<p>J'ai très vite voulu développer mes propres Mini-Jeux en OpenGL avec cette librairie.</p>
|
||
|
||
<ProjectList>
|
||
<ProjectElement
|
||
image_src='https://camo.githubusercontent.com/5895992a1089b81b0730608a47ebe08d55f1e6c9bada7752f89f7304a743652d/68747470733a2f2f7062732e7477696d672e636f6d2f6d656469612f4363334475776e5749414949355a772e6a70673a6c61726765'
|
||
description='Test gestion de la lumière'
|
||
url='https://github.com/mrdev023/Java-Game-Engine-Light-Test'
|
||
/>
|
||
<ProjectElement
|
||
image_src='https://camo.githubusercontent.com/f2dbe8898987b638eaa4d5dbc72797a4ff9c4bcb0275591f7fb24e7f32da5dd3/68747470733a2f2f7062732e7477696d672e636f6d2f6d656469612f4373567138634657384141374279722e6a7067'
|
||
description='Test OpenGL 3.3+ et LWJGL 3'
|
||
url='https://github.com/mrdev023/Modern-Game-Engine'
|
||
/>
|
||
<ProjectElement
|
||
image_src='https://camo.githubusercontent.com/414745fd4066b03c789b3a54d798c6f76df05039d464e29c822653e4e1515c73/68747470733a2f2f7062732e7477696d672e636f6d2f6d656469612f4350576147763457734141585068552e706e673a6c61726765'
|
||
description='Petit jeu en Voxel (Minecraft like)'
|
||
url='https://github.com/mrdev023/Voxel-Test'
|
||
/>
|
||
</ProjectList>
|
||
</TimelineCardContent>
|
||
</TimelineCard>
|
||
</TimelineElement>
|
||
</Timeline>
|
||
</div>
|
||
)
|
||
}
|
||
|
||
export default MonParcours |