From 54b1c5c9698dd9a4e8fa2be142e05c00d505e80b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laure=CE=B7t?= Date: Fri, 12 Aug 2022 15:27:13 +0200 Subject: [PATCH] feat: bunch of stuff, too lazy to make individual commits --- .editorconfig | 9 +++ .gitignore | 1 + src/.htaccess | 1 + src/_assets/hamburger.svg | 8 ++- src/_assets/public.pgp | 52 ++++++++++++++++ src/_data/personnal_projects.yml | 37 +++++++++++ src/_data/school_projects.yml | 16 +++++ src/_layout/header.html | 18 +++--- src/_layout/page_foot.html | 4 +- src/_layout/tag.html | 18 ------ src/_rss/head.xml | 37 ----------- src/_rss/item.xml | 60 ------------------ src/index.md | 6 +- src/projects.md | 9 +++ src/utils.jl | 101 ++++++++++++++++++++++++++----- 15 files changed, 232 insertions(+), 145 deletions(-) create mode 100644 .editorconfig create mode 100644 src/.htaccess create mode 100644 src/_assets/public.pgp create mode 100644 src/_data/personnal_projects.yml create mode 100644 src/_data/school_projects.yml delete mode 100644 src/_layout/tag.html delete mode 100644 src/_rss/head.xml delete mode 100644 src/_rss/item.xml create mode 100644 src/projects.md diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..c6c8b36 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true diff --git a/.gitignore b/.gitignore index e14ddf7..f20c11b 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ __site/ .DS_Store node_modules/ package-lock.json +eportfolio/ diff --git a/src/.htaccess b/src/.htaccess new file mode 100644 index 0000000..5a928f6 --- /dev/null +++ b/src/.htaccess @@ -0,0 +1 @@ +Options -Indexes diff --git a/src/_assets/hamburger.svg b/src/_assets/hamburger.svg index 233bf21..6d5f2f7 100644 --- a/src/_assets/hamburger.svg +++ b/src/_assets/hamburger.svg @@ -1 +1,7 @@ - \ No newline at end of file + + + + diff --git a/src/_assets/public.pgp b/src/_assets/public.pgp new file mode 100644 index 0000000..283387a --- /dev/null +++ b/src/_assets/public.pgp @@ -0,0 +1,52 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +hJVGcEo8gZdmub8= +=DupR +-----END PGP PUBLIC KEY BLOCK----- diff --git a/src/_data/personnal_projects.yml b/src/_data/personnal_projects.yml new file mode 100644 index 0000000..8b5fc06 --- /dev/null +++ b/src/_data/personnal_projects.yml @@ -0,0 +1,37 @@ +Hackathon net7: + role: Author + year: 2022-2023 + description: Cool little game, soon™ + +Personnal website: + role: Author + year: 2022-2023 + description: TODO + repository: https://git.inpt.fr/fainsil/personnal-website/ + website: https://laurent.fainsin.bzh/ + +B00 plays GBA: + role: Author + description: Using technologies such as [websocket](https://websockets.readthedocs.io/en/stable/), [redis](https://redis.io/), [docker](https://www.docker.com/), [rtmp](https://en.wikipedia.org/wiki/Real-Time_Messaging_Protocol), [mgba](https://github.com/mgba-emu/mgba) and gluing it all together with [Python](https://en.wikipedia.org/wiki/Python_(programming_language)), we get a collaborative emulator inspired from [TwitchPlaysPokemon](https://en.wikipedia.org/wiki/Twitch_Plays_Pok%C3%A9mon). + repository: https://git.inpt.fr/fainsil/booplaysgba/ + +INP-net: + role: President + year: 2021-2022 + description: Active member of my school's computer association which provides many services to over 10,000 students. + website: https://www.bde.enseeiht.fr/clubs/net7/ + repository: https://git.inpt.fr/inp-net/ + +net7: + role: Treasurer + year: 2021-2022 + description: Active member of my school's computer association which provides many services to over 10,000 students. + website: https://www.bde.inp-toulouse.fr/clubs/inp-net/ + repository: https://git.inpt.fr/net7/ + +Personnal website (old): + role: Author + year: 2020-2022 + description: Simple website built with the static site generetor [11ty.js](https://www.11ty.dev/). Made with [Nunjucks](https://mozilla.github.io/nunjucks/), [SCSS](https://sass-lang.com/), [Javascript](https://developer.mozilla.org/fr/docs/Web/JavaScript), [Yarn](https://yarnpkg.com/) and autodeployed with a [GitLab pipeline](https://git.inpt.fr/fainsil/personnal-website/-/pipelines). + repository: https://git.inpt.fr/fainsil/personnal-website-old/ + website: https://fainsil.users.inpt.fr/ diff --git a/src/_data/school_projects.yml b/src/_data/school_projects.yml new file mode 100644 index 0000000..e09b342 --- /dev/null +++ b/src/_data/school_projects.yml @@ -0,0 +1,16 @@ +Sagittarius: + repo: https://git.inpt.fr/fainsil/sagittarius + pdf: https://git.inpt.fr/fainsil/sagittarius/-/blob/master/docs/iteration3/rapport3.pdf + role: Author + description: From an object oriented programming project in [Java](https://en.wikipedia.org/wiki/Java_(programming_language)), a little 2D turn-based game inspired by [a game under the same name by George Prosser](https://gprosser.itch.io/sagittarius). + +Minishell: + repo: https://git.inpt.fr/fainsil/minishell + role: Author + description: Implementation of a basic [shell program](https://en.wikipedia.org/wiki/Shell_(computing)) in [C](https://en.wikipedia.org/wiki/C_(programming_language)), 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](https://en.wikipedia.org/wiki/Ada_(programming_language)) to compute the [pagerank](https://en.wikipedia.org/wiki/PageRank) of a given network as quickly and efficiently as possible. diff --git a/src/_layout/header.html b/src/_layout/header.html index cd43d35..c81a82e 100644 --- a/src/_layout/header.html +++ b/src/_layout/header.html @@ -1,12 +1,10 @@
- - + +
diff --git a/src/_layout/page_foot.html b/src/_layout/page_foot.html index ef339a9..c7905a6 100644 --- a/src/_layout/page_foot.html +++ b/src/_layout/page_foot.html @@ -1,4 +1,4 @@
- CC BY-SA 4.0 {{ fill author }}. {{isnotpage /tag/*}}Last modified: {{ fill fd_mtime }}.{{end}} - Website built with Franklin.jl and the Julia programming language. + Last modified: {{ fill fd_mtime }}. Website built with + Franklin.jl.
diff --git a/src/_layout/tag.html b/src/_layout/tag.html deleted file mode 100644 index 979b60c..0000000 --- a/src/_layout/tag.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - Tag: {{fill fd_tag}} - - - {{insert header.html}} -
-

Tag: {{fill fd_tag}}

- {{taglist}} - {{insert page_foot.html}} -
- - diff --git a/src/_rss/head.xml b/src/_rss/head.xml deleted file mode 100644 index 4c9f62b..0000000 --- a/src/_rss/head.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - <![CDATA[ {{fd2rss website_title}} ]]> - - {{website_url}} - - - - - diff --git a/src/_rss/item.xml b/src/_rss/item.xml deleted file mode 100644 index 07f6506..0000000 --- a/src/_rss/item.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - - <![CDATA[ {{fd2rss rss_title}} ]]> - - {{fd_full_url}} - {{fd_full_url}} - - - - - - {{if rss_full_content}} - - - - {{end}} - - - {{RFC822 rss_pubdate}} - - - {{isnotempty rss_author}} - {{rss_author}} - {{end}} - {{isnotempty author}} - - {{author}} - - {{end}} - - {{isnotempty rss_category}} - {{rss_category}} - {{end}} - - {{isnotempty rss_comments}} - {{rss_comments}} - {{end}} - - {{isnotempty rss_enclosure}} - {{rss_enclosure}} - {{end}} - diff --git a/src/index.md b/src/index.md index 365c759..27925c2 100644 --- a/src/index.md +++ b/src/index.md @@ -1,17 +1,17 @@ @def title = "Laurent Fainsin" -@def tags = ["syntax", "code"] Hi, I'm Laurent. I'm currently an M2 [engineering](https://www.francecompetences.fr/recherche/rncp/35713/) student at [ENSEEIHT](https://www.enseeiht.fr/) in France. I study [Computer Science](https://www.enseeiht.fr/fr/formation/formation-ingenieur/departement-sn/programme-sn.html) and this is my personnal website to showcase my work. I'm interested in machine learning and computer graphics. +I'm very active in the associative life of my school. -Here is my [resume](/resume/en) if you are professionally interested. +Here is my [resume](/assets/resume.pdf) if you are professionally interested. You can email me at : - [laurent@~~~~~~fainsin.bzh](mailto:laurent@fainsin.bzh) -- [laurentfainsin@~~~~~~protonmail.com](mailto:laurentfainsin@protonmail.com) ([PGP](/public.pgp)) +- [laurentfainsin@~~~~~~protonmail.com](mailto:laurentfainsin@protonmail.com) ([PGP](/assets/public.pgp)) - [laurent.fainsin@~~~~~~etu.inp-n7.fr](mailto:laurent.fainsin@etu.inp-n7.fr) You can reach me via : diff --git a/src/projects.md b/src/projects.md new file mode 100644 index 0000000..23512b6 --- /dev/null +++ b/src/projects.md @@ -0,0 +1,9 @@ +@def title = "Projects" + +# Personnal projects + +test + +# School projects + +test diff --git a/src/utils.jl b/src/utils.jl index c3fa6b1..33d3164 100644 --- a/src/utils.jl +++ b/src/utils.jl @@ -1,16 +1,89 @@ -function hfun_bar(vname) - val = Meta.parse(vname[1]) - return round(sqrt(val), digits=2) -end +using YAML -function hfun_m1fill(vname) - var = vname[1] - return pagevar("index", var) -end +personnal_projects = YAML.load_file("_data/personnal_projects.yml") +school_projects = YAML.load_file("_data/school_projects.yml") -function lx_baz(com, _) - # keep this first line - brace_content = Franklin.content(com.braces[1]) # input string - # do whatever you want here - return uppercase(brace_content) -end +# icon_dict = Dict( +# "arXiv" => ("ai ai-arxiv ai-lg", "arXiv"), +# "openaccess" => ("ai ai-open-access ai-lg", "Journal paper"), +# "closedaccess" => ("ai ai-closed-access ai-lg", "Journal paper"), +# "conference" => ("ai ai-open-access ai-lg", "Conference paper"), +# "julia_package" => ("icon-julia-dots", "Julia package"), +# "reproduction_code" => ("las la-code la-lg", "Reproduction code"), +# "bioRxiv" => ("ai ai-biorxiv ai-lg", "bioRxiv"), +# "r_package" => ("lab la-r-project la-lg", "R package"), +# "poster" => ("las la-chalkboard la-lg", "Poster") +# ) + + +# function tooltip_code(url, class) +# dict_entry = icon_dict[class] +# class_text = dict_entry[1] +# tooltip_text = dict_entry[2] +# """ +# +# +# $(tooltip_text) +# +# """ +# end + + +# function bibprint(yamlkey) +# entry = bibliography[yamlkey] +# names = join(["""$name""" for name ∈ entry["author"]], ", ") +# year = """$(entry["year"])""" +# title = """$(entry["title"]).""" +# journal = """$(entry["journal"]).""" +# html_string = """ +#
  • +# $(names) +# $(year)
    +# $(title)
    +# $(journal)
    +# """ +# if haskey(entry, "note") +# html_string = """ +# $(html_string) +# $(entry["note"])
    +# """ +# end + +# bibkey_order = ["openaccess" +# "closedaccess" +# "conference" +# "arXiv" +# "bioRxiv" +# "poster" +# "reproduction_code" +# "julia_package" +# "r_package"] +# for key in bibkey_order +# if haskey(entry, key) +# html_string = """ +# $(html_string) +# $(tooltip_code(entry[key], key)) +# """ +# end +# end +# html_string = """ +# $(html_string) +#
  • +# """ +# html_string +# end + +# function hfun_bibliographyprint(yamlkeys) +# keys = locvar(yamlkeys[1]) +# html_string = """
      """ +# for key in keys +# html_string = """ +# $(html_string) +# $(bibprint(key)) +# """ +# end +# """ +# $(html_string) +#
    +# """ +# end