From bcb88522c1ac0cd052aded2a53ec4b7c77155558 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laure=CE=B7t?= Date: Sat, 22 Jan 2022 09:31:25 +0100 Subject: [PATCH] feat: switched from json file to yaml --- .eleventy.js | 23 ++-- .vscode/launch.json | 9 +- .vscode/settings.json | 3 +- package.json | 1 + src/_data/resumes/en.json | 281 -------------------------------------- src/_data/resumes/en.yml | 208 ++++++++++++++++++++++++++++ src/_data/resumes/fr.json | 277 ------------------------------------- src/_data/resumes/fr.yml | 211 ++++++++++++++++++++++++++++ src/index.md | 2 +- src/resume/resume.njk | 54 ++++---- yarn.lock | 7 + 11 files changed, 473 insertions(+), 603 deletions(-) delete mode 100644 src/_data/resumes/en.json create mode 100644 src/_data/resumes/en.yml delete mode 100644 src/_data/resumes/fr.json create mode 100644 src/_data/resumes/fr.yml diff --git a/.eleventy.js b/.eleventy.js index 7d2b484..10a9c2d 100644 --- a/.eleventy.js +++ b/.eleventy.js @@ -1,7 +1,8 @@ const pluginNavigation = require('@11ty/eleventy-navigation') -const htmlmin = require('html-minifier') -const markdownIt = require('markdown-it') const markdownItAttrs = require('markdown-it-attrs') +const markdownIt = require('markdown-it') +const htmlmin = require('html-minifier') +const yaml = require("js-yaml"); const options = { html: true, breaks: true, @@ -9,11 +10,13 @@ const options = { } const markdownLib = markdownIt(options).use(markdownItAttrs) + module.exports = function (eleventyConfig) { + eleventyConfig.addDataExtension("yml", contents => yaml.load(contents)); eleventyConfig.addGlobalData('username', 'Laureηt') - eleventyConfig.addPlugin(pluginNavigation) - eleventyConfig.setLibrary('md', markdownLib) eleventyConfig.addWatchTarget('./src/scss/') + eleventyConfig.setLibrary('md', markdownLib) + eleventyConfig.addPlugin(pluginNavigation) eleventyConfig.addPassthroughCopy({ 'assets/': './' }) @@ -23,11 +26,11 @@ module.exports = function (eleventyConfig) { // Eleventy 1.0+: use this.inputPath and this.outputPath instead if (outputPath && outputPath.endsWith('.html')) { const minified = htmlmin.minify(content, { + collapseWhitespace: true, useShortDoctype: true, removeComments: true, - collapseWhitespace: true, - minifyJS: true, - minifyCSS: true + minifyCSS: true, + minifyJS: true }) return minified } else { @@ -44,10 +47,10 @@ module.exports = function (eleventyConfig) { return { passthroughFileCopy: true, dir: { - input: 'src', - data: '_data', + includes: '_includes', output: '_site', - includes: '_includes' + data: '_data', + input: 'src' } } } diff --git a/.vscode/launch.json b/.vscode/launch.json index e32379d..55b934c 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -4,13 +4,10 @@ { "type": "node", "request": "launch", - "name": "Serve the website", + "name": "Launch 11ty", "console": "integratedTerminal", - "runtimeExecutable": "yarn", - "runtimeArgs": [ - "run", - "start" - ] + "program": "${workspaceFolder}/node_modules/@11ty/eleventy/cmd.js", + "args": [], } ] } diff --git a/.vscode/settings.json b/.vscode/settings.json index 8ac2f0c..c2f8aea 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,5 +5,6 @@ }, "emmet.includeLanguages": { "nunjucks": "html" - } + }, + "debug.allowBreakpointsEverywhere": true } diff --git a/package.json b/package.json index 6a77679..bb47210 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "@11ty/eleventy-navigation": "^0.3.2", "chaffle": "^2.1.0", "html-minifier": "^4.0.0", + "js-yaml": "^4.1.0", "markdown-it": "^12.2.0", "markdown-it-attrs": "^4.1.0", "npm-run-all": "^4.1.5", diff --git a/src/_data/resumes/en.json b/src/_data/resumes/en.json deleted file mode 100644 index 07d766e..0000000 --- a/src/_data/resumes/en.json +++ /dev/null @@ -1,281 +0,0 @@ -{ - "locale": "en", - "name": "Laurent Fainsin", - "go_back": "Go back", - "flag_icon": "flag-icon flag-icon-gb", - "info": { - "label": "CS Engineering Student" - }, - "contacts": { - "title": "Contacts", - "list": [ - { - "contact": "laurentfainsin@protonmail.com", - "url": "mailto:laurentfainsin@protonmail.com", - "icon": "fa fa-envelope-o" - }, - { - "contact": "+33781492838", - "url": "https://signal.org/", - "icon": "fa fa-phone" - }, - { - "contact": "Brest, France", - "url": "https://www.openstreetmap.org/#map=12/48.3930/-4.4601", - "icon": "fa fa-location-arrow" - } - ] - }, - "socials": { - "title": "Socials", - "list": [ - { - "network": "laurent-fainsin", - "url": "https://www.linkedin.com/in/laurent-fainsin/", - "icon": "fa fa-linkedin" - }, - { - "network": "fainsil", - "url": "https://git.inpt.fr/fainsil", - "icon": "fa fa-gitlab" - }, - { - "network": "@fainsil:inpt.fr", - "url": "https://matrix.to/#/@fainsil:inpt.fr", - "icon": "fa fa-matrix-org" - } - ] - }, - "experience": { - "title": "Professional experience", - "list": [ - { - "title": "Bio-cleaning agent", - "description": "Blue-collar internship at the Centrer Hospitalier Régional Universitaire de Brest (CHRU) for a two-month period. I learned to organize and work efficiently in a team.", - "date": "Summer 2021" - } - ] - }, - "school_projects": { - "title": "School projects", - "list": [ - { - "title": "Sagittarius", - "repo": "https://git.inpt.fr/tobgang/sagittarius", - "pdf": "https://git.inpt.fr/tobgang/sagittarius-pdf/-/blob/master/iteration3/rapport3.pdf", - "role": "Author", - "description": "As a result of an object oriented programming project in java, here is a little 2D turn-based game inspired by a game under the same name by George Prosser." - }, - { - "title": "Minishell", - "repo": "https://git.inpt.fr/fainsil/minishell", - "role": "Author", - "description": "Implementation of a basic shell program in C, capable of launching programs, piping their streams and sending them signals." - }, - { - "title": "Pagerank", - "repo": "https://git.inpt.fr/fainsil/pagerank", - "pdf": "https://git.inpt.fr/fainsil/pagerank/-/blob/master/doc/rapport.pdf", - "role": "Author", - "description": "Implementation of an iterative algorithm in Ada to compute the pagerank of a given network as quickly and efficiently as possible." - } - ] - }, - "personnal_projects": { - "title": "Personnal projects", - "list": [ - { - "title": "B00 plays GBA", - "repo": "https://git.inpt.fr/fainsil/booplaysgba/", - "role": "Author", - "description": "Using technologies such as websocket, redis, docker, rtmp, mgba and gluing it all together with Python, we get a collaborative emulator inspired from TwitchPlaysPokemon." - }, - { - "title": "This website", - "repo": "https://git.inpt.fr/fainsil/personnal-website/", - "role": "Author", - "description": "I made this website almost entirely from scratch, I used the static site generetor 11ty.js to simplify the process thanks to its templating system. I learned a lot about HTML, CSS, Javascript and it also allowed me to strengthen my git skills." - } - ] - }, - "education": { - "title": "Education", - "level": "Master degree", - "list": [ - { - "institution": "ENSEEIHT", - "title": "CS Engineer", - "url": "https://www.enseeiht.fr/", - "start": "2020", - "end": "Now", - "eqv": "Master (L3, M1, M2)" - }, - { - "institution": "Lycée Kérichen/Vauban", - "title": "CPGE PSI", - "url": "https://lycee-la-perouse-kerichen-brest.ac-rennes.fr/", - "start": "2018", - "end": "2020", - "eqv": "License (L1, L2)" - }, - { - "institution": "Lycée de l'Harteloire", - "title": "Baccalauréat S", - "url": "https://www.harteloire.com/", - "start": "2015", - "end": "2018", - "eqv": "Highschool" - } - ] - }, - "skills": { - "title": "Skills", - "list": [ - { - "name": "General Softwares", - "level": "advanced", - "tags": [ - "Linux", - "LaTeX", - "Git", - "Word", - "Excel" - ] - }, - { - "name": "Web Development", - "level": "intermediate", - "tags": [ - "HTML5", - "CSS3", - "JavaScript", - "Django", - "11ty.js" - ] - }, - { - "name": "Scientific Computing", - "level": "intermediate", - "tags": [ - "Numpy", - "Matlab", - "Julia" - ] - }, - { - "name": "Licenses", - "level": "french", - "tags": [ - "AM", - "B", - "B1" - ] - } - ] - }, - "reading": { - "title": "Readings", - "list": [ - { - "title": "Data-Driven Science and Engineering", - "url": "http://www.databookuw.com/" - }, - { - "title": "Linux Bible, 10th Edition", - "url": "https://www.oreilly.com/library/view/linux-bible-10th/9781119578888/" - }, - { - "title": "The Book of Shaders", - "url": "https://thebookofshaders.com/" - }, - { - "title": "r/programming", - "url": "https://www.reddit.com/r/programming" - }, - { - "title": "r/privacy", - "url": "https://www.reddit.com/r/privacy" - } - ] - }, - "languages": { - "title": "Languages", - "list": [ - { - "language": "French", - "level": "native", - "icon": "flag-icon flag-icon-fr" - }, - { - "language": "English", - "level": "proficient", - "icon": "flag-icon flag-icon-gb" - }, - { - "language": "Japanese", - "level": "beginner", - "icon": "flag-icon flag-icon-jp" - }, - { - "language": "Spanish", - "level": "elementary", - "icon": "flag-icon flag-icon-es" - } - ] - }, - "langages": { - "title": "Programming languages", - "list": [ - { - "language": "Python", - "level": "intermediate", - "icon": "devicon-python-plain" - }, - { - "language": "Java", - "level": "intermediate", - "icon": "devicon-java-plain" - }, - { - "language": "Rust", - "level": "beginner", - "icon": "devicon-rust-plain" - }, - { - "language": "C", - "level": "beginner", - "icon": "devicon-c-plain" - } - ] - }, - "interests": { - "title": "Interests", - "list": [ - { - "name": "GitHub/Gitlab", - "summary": "Regular open source software user and tinkerer.", - "tags": [ - "Git", - "Open Source" - ] - }, - { - "name": "Archery", - "summary": "Practiced for a couple years the art of precision & accuracy.", - "tags": [ - "Precision", - "Accuracy", - "Patience" - ] - }, - { - "name": "Fishkeeping", - "summary": "Tamagochis, but with real responsibilities.", - "tags": [ - "Patience", - "Perfectionism" - ] - } - ] - } -} diff --git a/src/_data/resumes/en.yml b/src/_data/resumes/en.yml new file mode 100644 index 0000000..a23587b --- /dev/null +++ b/src/_data/resumes/en.yml @@ -0,0 +1,208 @@ +locale: en +name: Laurent Fainsin +go_back: Go back +flag_icon: flag-icon flag-icon-gb + +info: + label: CS Engineering Student + +contacts: + title: Contacts + list: + laurentfainsin@protonmail.com: + url: mailto:laurentfainsin@protonmail.com + icon: fa fa-envelope-o + "+33781492838": + url: https://signal.org/ + icon: fa fa-phone + Brest, France: + url: https://www.openstreetmap.org/#map=12/48.3930/-4.4601 + icon: fa fa-location-arrow + +socials: + title: Socials + list: + laurent-fainsin: + url: https://www.linkedin.com/in/laurent-fainsin/ + icon: fa fa-linkedin + fainsil: + url: https://git.inpt.fr/fainsil + icon: fa fa-gitlab + "@fainsil:inpt.fr": + url: https://matrix.to/#/@fainsil:inpt.fr + icon: fa fa-matrix-org + +experience: + title: Professional experience + list: + Bio-cleaning agent: + description: + Blue-collar internship at the Centrer Hospitalier Régional Universitaire + de Brest (CHRU) for a two-month period. I learned to organize and work efficiently + in a team. + date: Summer 2021 + +school_projects: + title: School projects + list: + Sagittarius: + repo: https://git.inpt.fr/tobgang/sagittarius + pdf: https://git.inpt.fr/tobgang/sagittarius-pdf/-/blob/master/iteration3/rapport3.pdf + role: Author + description: + As a result of an object oriented programming project in java, + here is a little 2D turn-based game inspired by a game under the same name + by George Prosser. + Minishell: + repo: https://git.inpt.fr/fainsil/minishell + role: Author + description: + Implementation of a basic shell program in C, capable of launching + programs, piping their streams and sending them signals. + Pagerank: + repo: https://git.inpt.fr/fainsil/pagerank + pdf: https://git.inpt.fr/fainsil/pagerank/-/blob/master/doc/rapport.pdf + role: Author + description: + Implementation of an iterative algorithm in Ada to compute the + pagerank of a given network as quickly and efficiently as possible. + +personnal_projects: + title: Personnal projects + list: + B00 plays GBA: + repo: https://git.inpt.fr/fainsil/booplaysgba/ + role: Author + description: + Using technologies such as websocket, redis, docker, rtmp, mgba + and gluing it all together with Python, we get a collaborative emulator inspired + from TwitchPlaysPokemon. + This website: + repo: https://git.inpt.fr/fainsil/personnal-website/ + role: Author + description: + I made this website almost entirely from scratch, I used the static + site generetor 11ty.js to simplify the process thanks to its templating system. + I learned a lot about HTML, CSS, Javascript and it also allowed me to strengthen + my git skills. + +education: + title: Education + level: Master degree + list: + ENSEEIHT: + title: CS Engineer + url: https://www.enseeiht.fr/ + start: "2020" + end: Now + eqv: Master (L3, M1, M2) + Lycée Kérichen/Vauban: + title: CPGE PSI + url: https://lycee-la-perouse-kerichen-brest.ac-rennes.fr/ + start: "2018" + end: "2020" + eqv: License (L1, L2) + Lycée de l'Harteloire: + title: Baccalauréat S + url: https://www.harteloire.com/ + start: "2015" + end: "2018" + eqv: Highschool + +skills: + title: Skills + list: + General Softwares: + level: advanced + tags: + - Linux + - LaTeX + - Git + - Word + - Excel + Web Development: + level: intermediate + tags: + - HTML5 + - CSS3 + - JavaScript + - Django + - 11ty.js + Scientific Computing: + level: intermediate + tags: + - Numpy + - Matlab + - Julia + Licenses: + level: french + tags: + - AM + - B + - B1 + +reading: + title: Readings + list: + Data-Driven Science and Engineering: + url: http://www.databookuw.com/ + Linux Bible, 10th Edition: + url: https://www.oreilly.com/library/view/linux-bible-10th/9781119578888/ + The Book of Shaders: + url: https://thebookofshaders.com/ + r/programming: + url: https://www.reddit.com/r/programming + r/privacy: + url: https://www.reddit.com/r/privacy + +languages: + title: Languages + list: + French: + level: native + icon: flag-icon flag-icon-fr + English: + level: proficient + icon: flag-icon flag-icon-gb + Japanese: + level: beginner + icon: flag-icon flag-icon-jp + Spanish: + level: elementary + icon: flag-icon flag-icon-es + +langages: + title: Programming languages + list: + Python: + level: intermediate + icon: devicon-python-plain + Java: + level: intermediate + icon: devicon-java-plain + Rust: + level: beginner + icon: devicon-rust-plain + C: + level: beginner + icon: devicon-c-plain + +interests: + title: Interests + list: + GitHub/Gitlab: + summary: Regular open source software user and tinkerer. + tags: + - Git + - Open Source + Archery: + summary: Practiced for a couple years the art of precision & accuracy. + tags: + - Precision + - Accuracy + - Patience + Fishkeeping: + summary: Tamagochis, but with real responsibilities. + tags: + - Patience + - Perfectionism diff --git a/src/_data/resumes/fr.json b/src/_data/resumes/fr.json deleted file mode 100644 index 34b859e..0000000 --- a/src/_data/resumes/fr.json +++ /dev/null @@ -1,277 +0,0 @@ -{ - "locale": "fr", - "name": "Laurent Fainsin", - "go_back": "revenir en arrière", - "flag_icon": "flag-icon flag-icon-fr", - "info": { - "label": "Étudiant Ingénieur SN" - }, - "contacts": { - "title": "Contacts", - "list": [ - { - "contact": "laurentfainsin@protonmail.com", - "url": "mailto:laurentfainsin@protonmail.com", - "icon": "fa fa-envelope-o" - }, - { - "contact": "+33781492838", - "url": "https://signal.org/", - "icon": "fa fa-phone" - }, - { - "contact": "Brest, France", - "url": "https://www.openstreetmap.org/#map=12/48.3930/-4.4601", - "icon": "fa fa-location-arrow" - } - ] - }, - "socials": { - "title": "Réseaux", - "list": [ - { - "network": "laurent-fainsin", - "url": "https://www.linkedin.com/in/laurent-fainsin/", - "icon": "fa fa-linkedin" - }, - { - "network": "fainsil", - "url": "https://git.inpt.fr/fainsil", - "icon": "fa fa-gitlab" - }, - { - "network": "@fainsil:inpt.fr", - "url": "https://matrix.to/#/@fainsil:inpt.fr", - "icon": "fa fa-matrix-org" - } - ] - }, - "school_projects": { - "title": "Projets scolaires", - "list": [ - { - "title": "Sagittarius", - "repo": "https://git.inpt.fr/tobgang/sagittarius", - "pdf": "https://git.inpt.fr/tobgang/sagittarius-pdf/-/blob/master/iteration3/rapport3.pdf", - "role": "Author", - "description": "Suite à un projet de programmation orientée objet en java, voici un petit jeu 2D au tour par tour inspiré d'un jeu du même nom de George Prosser." - }, - { - "title": "Minishell", - "repo": "https://git.inpt.fr/fainsil/minishell", - "role": "Author", - "description": "Implémentation d'un shell en C, capable d'exécuter des programmes, de rediriger leurs flux et de leur envoyer des signaux." - }, - { - "title": "Pagerank", - "repo": "https://git.inpt.fr/fainsil/pagerank", - "pdf": "https://git.inpt.fr/fainsil/pagerank/-/blob/master/doc/rapport.pdf", - "role": "Author", - "description": "Mise en œuvre d'un algorithme itératif en Ada pour calculer le pagerank d'un réseau donné, aussi rapidement et efficacement que possible." - } - ] - }, - "personnal_projects": { - "title": "Projets personnels", - "list": [ - { - "title": "B00 plays GBA", - "repo": "https://git.inpt.fr/fainsil/booplaysgba/", - "role": "Author", - "description": "En utilisant des technologies telles que websocket, redis, docker, rtmp, mgba et en collant le tout avec Python, on obtient un émulateur collaboratif inspiré de TwitchPlaysPokemon." - }, - { - "title": "Ce site web", - "repo": "https://git.inpt.fr/fainsil/personnal-website/", - "role": "Author", - "description": "J'ai fait ce site presque entièrement de zéro, pour simplifier le processus de création j'ai utilisé le générateur de site statique 11ty.js et son système de templates." - } - ] - }, - "experience": { - "title": "Expérience professionnelle", - "list": [ - { - "title": "Agent de bio-nettoyage", - "description": "Stage ouvrier au Centre Hospitalier Régional Universitaire de Brest (CHRU) pour une période de deux mois. J'ai appris à m'organiser et à travailler efficacement en équipe.", - "date": "Été 2021" - } - ] - }, - "education": { - "title": "Éducation", - "level": "Master degree", - "list": [ - { - "institution": "ENSEEIHT", - "title": "Ingénieur SN", - "url": "https://www.enseeiht.fr/", - "start": "2020", - "end": "Maintenant", - "eqv": "Master (L3, M1, M2)" - }, - { - "institution": "Lycée Kérichen/Vauban", - "title": "CPGE PSI", - "url": "https://lycee-la-perouse-kerichen-brest.ac-rennes.fr/", - "start": "2018", - "end": "2020", - "eqv": "Licence (L1, L2)" - }, - { - "institution": "Lycée de l'Harteloire", - "title": "Baccalauréat S", - "url": "https://www.harteloire.com/", - "start": "2015", - "end": "2018" - } - ] - }, - "skills": { - "title": "Compétences", - "list": [ - { - "name": "Bureautique", - "level": "avancé", - "tags": [ - "Linux", - "LaTeX", - "Git", - "Word", - "Excel" - ] - }, - { - "name": "Développement web", - "level": "intermédiaire", - "tags": [ - "HTML5", - "CSS3", - "JavaScript", - "11ty.js" - ] - }, - { - "name": "Calcul scientifique", - "level": "intermédiaire", - "tags": [ - "Numpy", - "Matlab" - ] - }, - { - "name": "Permis", - "tags": [ - "AM", - "B", - "B1" - ] - } - ] - }, - "reading": { - "title": "Lectures", - "list": [ - { - "title": "Data-Driven Science and Engineering", - "url": "http://www.databookuw.com/" - }, - { - "title": "Linux Bible, 10th Edition", - "url": "https://www.oreilly.com/library/view/linux-bible-10th/9781119578888/" - }, - { - "title": "The Book of Shaders", - "url": "https://thebookofshaders.com/" - }, - { - "title": "r/programming", - "url": "https://www.reddit.com/r/programming" - }, - { - "title": "r/privacy", - "url": "https://www.reddit.com/r/privacy" - } - ] - }, - "languages": { - "title": "Langues", - "list": [ - { - "language": "Français", - "level": "natif", - "icon": "flag-icon flag-icon-fr" - }, - { - "language": "Anglais", - "level": "bilingue", - "icon": "flag-icon flag-icon-gb" - }, - { - "language": "Japonais", - "level": "débutant", - "icon": "flag-icon flag-icon-jp" - }, - { - "language": "Espagnol", - "level": "élémentaire", - "icon": "flag-icon flag-icon-es" - } - ] - }, - "langages": { - "title": "Langages", - "list": [ - { - "language": "Python", - "level": "intermédiaire", - "icon": "devicon-python-plain" - }, - { - "language": "Java", - "level": "intermédiaire", - "icon": "devicon-java-plain" - }, - { - "language": "Rust", - "level": "débutant", - "icon": "devicon-rust-plain" - }, - { - "language": "C", - "level": "débutant", - "icon": "devicon-c-plain" - } - ] - }, - "interests": { - "title": "Centres d'intérêt", - "list": [ - { - "name": "GitHub/Gitlab", - "summary": "Utilisateur régulier de logiciels open source.", - "tags": [ - "Git", - "Open Source" - ] - }, - { - "name": "Tir à l'arc", - "summary": "Pratique de l'art de la précision et de l'exactitude.", - "tags": [ - "Précision", - "Exactitude", - "Patience" - ] - }, - { - "name": "Aquariums", - "summary": "Des Tamagochis, mais avec de réelles responsabilités.", - "tags": [ - "Patience", - "Perfectionnisme" - ] - } - ] - } -} diff --git a/src/_data/resumes/fr.yml b/src/_data/resumes/fr.yml new file mode 100644 index 0000000..54dc173 --- /dev/null +++ b/src/_data/resumes/fr.yml @@ -0,0 +1,211 @@ +locale: fr +name: Laurent Fainsin +go_back: revenir en arrière +flag_icon: flag-icon flag-icon-fr + +info: + label: Étudiant Ingénieur SN + +contacts: + title: Contacts + list: + laurentfainsin@protonmail.com: + url: mailto:laurentfainsin@protonmail.com + icon: fa fa-envelope-o + + "+33781492838": + url: https://signal.org/ + icon: fa fa-phone + + Brest, France: + url: https://www.openstreetmap.org/#map=12/48.3930/-4.4601 + icon: fa fa-location-arrow + +socials: + title: Réseaux + list: + laurent-fainsin: + url: https://www.linkedin.com/in/laurent-fainsin/ + icon: fa fa-linkedin + + fainsil: + url: https://git.inpt.fr/fainsil + icon: fa fa-gitlab + + "@fainsil:inpt.fr": + url: https://matrix.to/#/@fainsil:inpt.fr + icon: fa fa-matrix-org + +school_projects: + title: Projets scolaires + list: + Sagittarius: + repo: https://git.inpt.fr/tobgang/sagittarius + pdf: https://git.inpt.fr/tobgang/sagittarius-pdf/-/blob/master/iteration3/rapport3.pdf + role: Author + description: Suite à un projet de programmation orientée objet en java, voici un petit jeu 2D au tour par tour inspiré d'un jeu du même nom de George Prosser. + + Minishell: + repo: https://git.inpt.fr/fainsil/minishell + role: Author + description: Implémentation d'un shell en C, capable d'exécuter des programmes, de rediriger leurs flux et de leur envoyer des signaux. + + Pagerank: + repo: https://git.inpt.fr/fainsil/pagerank + pdf: https://git.inpt.fr/fainsil/pagerank/-/blob/master/doc/rapport.pdf + role: Author + description: Mise en œuvre d'un algorithme itératif en Ada pour calculer le pagerank d'un réseau donné, aussi rapidement et efficacement que possible. + +personnal_projects: + title: Projets personnels + list: + B00 plays GBA: + repo: https://git.inpt.fr/fainsil/booplaysgba/ + role: Author + description: En utilisant des technologies telles que websocket, redis, docker, rtmp, mgba et en collant le tout avec Python, on obtient un émulateur collaboratif inspiré de TwitchPlaysPokemon. + + Ce site web: + repo: https://git.inpt.fr/fainsil/personnal-website/ + role: Author + description: J'ai fait ce site presque entièrement de zéro, pour simplifier le processus de création j'ai utilisé le générateur de site statique 11ty.js et son système de templates. + +experience: + title: Expérience professionnelle + list: + Agent de bio-nettoyage: + description: Stage ouvrier au Centre Hospitalier Régional Universitaire de Brest (CHRU) pour une période de deux mois. J'ai appris à m'organiser et à travailler efficacement en équipe. + date: Été 2021 + +education: + title: Éducation + level: Master degree + list: + ENSEEIHT: + title: Ingénieur SN + url: https://www.enseeiht.fr/ + start: "2020" + end: Maintenant + eqv: Master (L3, M1, M2) + + Lycée Kérichen/Vauban: + title: CPGE PSI + url: https://lycee-la-perouse-kerichen-brest.ac-rennes.fr/ + start: "2018" + end: "2020" + eqv: Licence (L1, L2) + + Lycée de l'Harteloire: + title: Baccalauréat S + url: https://www.harteloire.com/ + start: "2015" + end: "2018" + +skills: + title: Compétences + list: + Bureautique: + level: avancé + tags: + - Linux + - LaTeX + - Git + - Word + - Excel + + Développement web: + level: intermédiaire + tags: + - HTML5 + - CSS3 + - JavaScript + - 11ty.js + + Calcul scientifique: + level: intermédiaire + tags: + - Numpy + - Matlab + + Permis: + tags: + - AM + - B + - B1 + +reading: + title: Lectures + list: + Data-Driven Science and Engineering: + url: http://www.databookuw.com/ + + Linux Bible, 10th Edition: + url: https://www.oreilly.com/library/view/linux-bible-10th/9781119578888/ + + The Book of Shaders: + url: https://thebookofshaders.com/ + + r/programming: + url: https://www.reddit.com/r/programming + + r/privacy: + url: https://www.reddit.com/r/privacy + +languages: + title: Langues + list: + Français: + level: natif + icon: flag-icon flag-icon-fr + + Anglais: + level: bilingue + icon: flag-icon flag-icon-gb + + Japonais: + level: débutant + icon: flag-icon flag-icon-jp + + Espagnol: + level: élémentaire + icon: flag-icon flag-icon-es + +langages: + title: Langages + list: + Python: + level: intermédiaire + icon: devicon-python-plain + + Java: + level: intermédiaire + icon: devicon-java-plain + + Rust: + level: débutant + icon: devicon-rust-plain + + C: + level: débutant + icon: devicon-c-plain + +interests: + title: Centres d'intérêt + list: + GitHub/Gitlab: + summary: Utilisateur régulier de logiciels open source. + tags: + - Git + - Open Source + + Tir à l'arc: + summary: Pratique de l'art de la précision et de l'exactitude. + tags: + - Précision + - Exactitude + - Patience + + Aquariums: + summary: Des Tamagochis, mais avec de réelles responsabilités. + tags: + - Patience + - Perfectionnisme diff --git a/src/index.md b/src/index.md index bdd6153..ed7b064 100644 --- a/src/index.md +++ b/src/index.md @@ -23,7 +23,7 @@ Hi, my name's Laurent Fainsin, and I'm currently an M1 [engineering](https://www

{{ project.description }}