feat: good base

This commit is contained in:
Laureηt 2022-08-12 18:17:01 +02:00
parent cec7cd146d
commit 61690d0586
No known key found for this signature in database
GPG key ID: D88C6B294FD40994
11 changed files with 95 additions and 118 deletions

3
.gitmodules vendored
View file

@ -1,3 +0,0 @@
[submodule "src/_libs/devicon"]
path = src/_libs/devicon
url = https://github.com/devicons/devicon

View file

@ -2,7 +2,7 @@
julia_version = "1.8.0-DEV.1544"
manifest_format = "2.0"
project_hash = "b624ff2117a370fbbc58955a02126cf4545f031e"
project_hash = "a02a7b673b951e1ca0acf27ef15e0db496517221"
[[deps.ArgTools]]
uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f"
@ -85,6 +85,12 @@ version = "0.5.1"
deps = ["Markdown"]
uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
[[deps.JLLWrappers]]
deps = ["Preferences"]
git-tree-sha1 = "abc9885a7ca2052a736a600f7fa66209f96506e1"
uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210"
version = "1.4.1"
[[deps.JSON]]
deps = ["Dates", "Mmap", "Parsers", "Unicode"]
git-tree-sha1 = "3c837543ddb02250ef42f4738347454f95079d4e"
@ -113,6 +119,12 @@ version = "1.9.1+2"
[[deps.Libdl]]
uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
[[deps.Libiconv_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"]
git-tree-sha1 = "42b62845d70a619f063a7da093d995ec8e15e778"
uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531"
version = "1.16.1+1"
[[deps.Literate]]
deps = ["Base64", "IOCapture", "JSON", "REPL"]
git-tree-sha1 = "5b5ec7696d40868945c407f28a6672a230448b70"
@ -187,6 +199,12 @@ deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markd
uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
version = "1.8.0"
[[deps.Preferences]]
deps = ["TOML"]
git-tree-sha1 = "47e5f437cc0e7ef2ce8406ce1e7e24d44915f88d"
uuid = "21216c6a-2e73-6563-6e65-726566657250"
version = "1.3.0"
[[deps.Printf]]
deps = ["Unicode"]
uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7"
@ -214,6 +232,12 @@ version = "1.1.0"
[[deps.Sockets]]
uuid = "6462fe0b-24de-5631-8697-dd941f90decc"
[[deps.StringEncodings]]
deps = ["Libiconv_jll"]
git-tree-sha1 = "50ccd5ddb00d19392577902f0079267a72c5ab04"
uuid = "69024149-9ee7-55f6-a4c4-859efe599b68"
version = "0.3.5"
[[deps.TOML]]
deps = ["Dates"]
uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76"
@ -246,6 +270,12 @@ uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"
[[deps.Unicode]]
uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5"
[[deps.YAML]]
deps = ["Base64", "Dates", "Printf", "StringEncodings"]
git-tree-sha1 = "3c6e8b9f5cdaaa21340f841653942e1a6b6561e5"
uuid = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6"
version = "0.4.7"
[[deps.Zlib_jll]]
deps = ["Libdl"]
uuid = "83775a58-1f1d-513f-b197-d71354ab007a"

View file

@ -1,3 +1,5 @@
[deps]
Franklin = "713c75ef-9fc9-4b05-94a9-213340da978e"
NodeJS = "2bd173c7-0d6d-553b-b6af-13a54713934c"
NodeJS = "2bd173c7-0d6d-553b-b6af-13a54713934c"
OrderedCollections = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
YAML = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6"

10
src/_css/project.css Normal file
View file

@ -0,0 +1,10 @@
.icons {
display: flex;
align-items: center;
gap: 0.5rem;
}
.icon {
display: flex;
align-items: center;
}

View file

@ -1,37 +1,28 @@
Hackathon net7:
role: Author
year: 2022-2023
description: Cool little game, soon™
Personnal website:
role: Author
year: 2022-2023
description: TODO
description: Simple website built with [Franklin.jl](https://franklinjl.org/).
repository: https://git.inpt.fr/fainsil/personnal-website/
website: https://laurent.fainsin.bzh/
B00 plays GBA:
role: Author
year: 2021-2023
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
INP-net (president):
year: 2021-2022
description: Active member of my school's computer association which provides many services to over 10,000 students.
description: Active member of my school's group computer association which provides many services to over 5,000 students in 6 schools each year.
website: https://www.bde.enseeiht.fr/clubs/net7/
repository: https://git.inpt.fr/inp-net/
net7:
role: Treasurer
net7 (treasurer):
year: 2021-2022
description: Active member of my school's computer association which provides many services to over 10,000 students.
description: Active member of my school's computer association which provides many services to over 1,000 students each year.
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).
description: Simple website built with the static site generator [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/

View file

@ -1,16 +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
year: 2020-2021
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).
repository: https://git.inpt.fr/fainsil/sagittarius
pdf: https://git.inpt.fr/fainsil/sagittarius/-/blob/master/docs/iteration3/rapport3.pdf
Minishell:
repo: https://git.inpt.fr/fainsil/minishell
role: Author
year: 2020-2021
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.
repository: https://git.inpt.fr/fainsil/minishell
Pagerank:
repo: https://git.inpt.fr/fainsil/pagerank
pdf: https://git.inpt.fr/fainsil/pagerank/-/blob/master/doc/rapport.pdf
role: Author
year: 2020-2021
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.
repository: https://git.inpt.fr/fainsil/pagerank
pdf: https://git.inpt.fr/fainsil/pagerank/-/blob/master/doc/rapport.pdf

View file

@ -3,12 +3,13 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
{{if hasmath}} {{insert head_katex.html }} {{end}}
{{if hascode}} {{insert head_highlight.html }} {{end}}
{{if hasmath}} {{insert head_katex.html }} {{end}}
{{if hascode}} {{insert head_highlight.html }} {{end}}
{{if hasicons}} {{insert head_icons.html }} {{end}}
<link rel="stylesheet" href="/css/franklin.css">
<link rel="stylesheet" href="/css/basic.css">
<link rel="icon" href="/assets/favicon.png">
{{isdef title}} <title>{{fill title}}</title> {{end}}
{{isdef title}} <title>{{fill title}}</title> {{end}}
</head>
<body>
{{insert header.html}}

View file

@ -0,0 +1,3 @@
<link rel="stylesheet" href="/libs/devicon/devicon.min.css" />
<link rel="stylesheet" href="/libs/line-awesome/css/line-awesome.min.css" />
<link rel="stylesheet" href="/css/project.css" />

View file

@ -4,6 +4,8 @@ mintoclevel = 2
ignore = ["node_modules/"]
hasicons = false
robots_disallow = ["/"]
generate_sitemap = false
generate_rss = false

View file

@ -1,9 +1,10 @@
@def title = "Projects"
@def hasicons = true
# Personnal projects
test
{{ print_projects _data/personnal_projects.yml }}
# School projects
test
{{ print_projects _data/school_projects.yml }}

View file

@ -1,89 +1,29 @@
using YAML
using OrderedCollections
using Franklin
personnal_projects = YAML.load_file("_data/personnal_projects.yml")
school_projects = YAML.load_file("_data/school_projects.yml")
function hfun_print_projects(yaml_files)
yaml = YAML.load_file(yaml_files[1]; dicttype=OrderedDict{String,Any})
# 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")
# )
html_string = ""
for (project_name, project) in yaml
description = Franklin.fd2html(project["description"], internal=true)
repository = haskey(project, "repository") ? """<a href="$(project["repository"])"><i class="icon devicon-git-plain"></i></a>""" : ""
website = haskey(project, "website") ? """<a href="$(project["website"])"><i class="icon las la-globe"></i></a>""" : ""
pdf = haskey(project, "pdf") ? """<a href="$(project["pdf"])"><i class="icon las la-file-pdf"></i></a>""" : ""
year = """<span class="year">$(project["year"])</span>"""
html_string = """
$(html_string)
<h2>$(project_name), <small>$(year)</small></h2>
$(description)
<span class="icons">
$(repository)
$(pdf)
$(website)
</span>
"""
end
# function tooltip_code(url, class)
# dict_entry = icon_dict[class]
# class_text = dict_entry[1]
# tooltip_text = dict_entry[2]
# """
# <span class="tooltip">
# <a href=$(url)><i class="$(class_text)"></i></a>
# <span class="tooltiptext">$(tooltip_text)</span>
# </span>
# """
# end
# function bibprint(yamlkey)
# entry = bibliography[yamlkey]
# names = join(["""<span class="person">$name</span>""" for name ∈ entry["author"]], ", ")
# year = """<span class="year">$(entry["year"])</span>"""
# title = """<span class="title">$(entry["title"]).</span>"""
# journal = """<span class="journal">$(entry["journal"]).</span>"""
# html_string = """
# <li>
# $(names)
# $(year)<br>
# $(title)<br>
# $(journal)<br>
# """
# if haskey(entry, "note")
# html_string = """
# $(html_string)
# <i> $(entry["note"]) </i> <br>
# """
# 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)
# </li>
# """
# html_string
# end
# function hfun_bibliographyprint(yamlkeys)
# keys = locvar(yamlkeys[1])
# html_string = """<ol>"""
# for key in keys
# html_string = """
# $(html_string)
# $(bibprint(key))
# """
# end
# """
# $(html_string)
# </ol>
# """
# end
return html_string
end