redesigned home page + Tons of minor improvements

This commit is contained in:
Crom (Thibaut CHARLES) 2018-05-16 12:31:51 +02:00
parent 7675c53fe6
commit 636e1145d9
Signed by: tcharles
GPG Key ID: 45A3D5F880B9E6D0
9 changed files with 160 additions and 56 deletions

View File

@ -1,4 +1,54 @@
@charset "UTF-8";
/* noto-serif-regular - latin */
@font-face {
font-family: "Noto Serif";
font-style: normal;
font-weight: 400;
src: url("/fonts/noto-serif-v6-latin-regular.eot");
/* IE9 Compat Modes */
src: local("Noto Serif"), local("NotoSerif"), url("/fonts/noto-serif-v6-latin-regular.eot?#iefix") format("embedded-opentype"), url("/fonts/noto-serif-v6-latin-regular.woff2") format("woff2"), url("/fonts/noto-serif-v6-latin-regular.woff") format("woff"), url("/fonts/noto-serif-v6-latin-regular.ttf") format("truetype"), url("/fonts/noto-serif-v6-latin-regular.svg#NotoSerif") format("svg");
/* Legacy iOS */
}
/* noto-serif-italic - latin */
@font-face {
font-family: "Noto Serif";
font-style: italic;
font-weight: 400;
src: url("/fonts/noto-serif-v6-latin-italic.eot");
/* IE9 Compat Modes */
src: local("Noto Serif Italic"), local("NotoSerif-Italic"), url("/fonts/noto-serif-v6-latin-italic.eot?#iefix") format("embedded-opentype"), url("/fonts/noto-serif-v6-latin-italic.woff2") format("woff2"), url("/fonts/noto-serif-v6-latin-italic.woff") format("woff"), url("/fonts/noto-serif-v6-latin-italic.ttf") format("truetype"), url("/fonts/noto-serif-v6-latin-italic.svg#NotoSerif") format("svg");
/* Legacy iOS */
}
/* noto-serif-700 - latin */
@font-face {
font-family: "Noto Serif";
font-style: normal;
font-weight: 700;
src: url("/fonts/noto-serif-v6-latin-700.eot");
/* IE9 Compat Modes */
src: local("Noto Serif Bold"), local("NotoSerif-Bold"), url("/fonts/noto-serif-v6-latin-700.eot?#iefix") format("embedded-opentype"), url("/fonts/noto-serif-v6-latin-700.woff2") format("woff2"), url("/fonts/noto-serif-v6-latin-700.woff") format("woff"), url("/fonts/noto-serif-v6-latin-700.ttf") format("truetype"), url("/fonts/noto-serif-v6-latin-700.svg#NotoSerif") format("svg");
/* Legacy iOS */
}
/* noto-serif-700italic - latin */
@font-face {
font-family: "Noto Serif";
font-style: italic;
font-weight: 700;
src: url("/fonts/noto-serif-v6-latin-700italic.eot");
/* IE9 Compat Modes */
src: local("Noto Serif Bold Italic"), local("NotoSerif-BoldItalic"), url("/fonts/noto-serif-v6-latin-700italic.eot?#iefix") format("embedded-opentype"), url("/fonts/noto-serif-v6-latin-700italic.woff2") format("woff2"), url("/fonts/noto-serif-v6-latin-700italic.woff") format("woff"), url("/fonts/noto-serif-v6-latin-700italic.ttf") format("truetype"), url("/fonts/noto-serif-v6-latin-700italic.svg#NotoSerif") format("svg");
/* Legacy iOS */
}
/* croissant-one-regular - latin */
@font-face {
font-family: "Croissant One";
font-style: normal;
font-weight: 400;
src: url("/fonts/croissant-one-v5-latin-regular.eot");
/* IE9 Compat Modes */
src: local("Croissant One"), local("CroissantOne-Regular"), url("/fonts/croissant-one-v5-latin-regular.eot?#iefix") format("embedded-opentype"), url("/fonts/croissant-one-v5-latin-regular.woff2") format("woff2"), url("/fonts/croissant-one-v5-latin-regular.woff") format("woff"), url("/fonts/croissant-one-v5-latin-regular.ttf") format("truetype"), url("/fonts/croissant-one-v5-latin-regular.svg#CroissantOne") format("svg");
/* Legacy iOS */
}
nav#left {
position: fixed;
left: -210px;
@ -479,6 +529,20 @@ nav#top:hover, nav#top:active {
#section-main article .center {
text-align: center;
}
#section-main article .canvas-container {
display: flex;
width: 100%;
flex-wrap: wrap;
justify-content: space-around;
}
#section-main article .canvas-container > * {
align-self: center;
}
#section-main article img.avatar {
border: none;
border-radius: 100%;
max-height: 200px;
}
body[data-width=small] #section-main article {
max-width: 100%;

BIN
img/avatar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

BIN
img/gitea.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -47,32 +47,39 @@ function setPage(path){
if(path === "/" || path === "" || path === "/index.html"){
path = "/home";
}
const existingPages = [ "/home", "/skills", "/projects", "/experiences", "/hobbies"];
window.scrollTo(0, 0);
$("#article-container").empty();
if(existingPages.findIndex(a => a === path) >= 0){
window.scrollTo(0, 0);
$("#article-container").empty();
$.ajax("/pages"+path+".md")
.done((res) => {
$("#article-container").html(res);
$.ajax("/pages"+path+".md")
.done((res) => {
$("#article-container").html(res);
const len = $("#article-container > article").length;
let cnt = 0;
$("#article-container > article").each((i, elmt) => {
$(elmt).html(marked($(elmt).html(), markedOpt, (err, res) => {
cnt++;
if(cnt === len){
if(path == "/skills"){
skillsPageSetup();
const len = $("#article-container > article").length;
let cnt = 0;
$("#article-container > article").each((i, elmt) => {
$(elmt).html(marked($(elmt).html(), markedOpt, (err, res) => {
cnt++;
if(cnt === len){
if(path == "/skills"){
skillsPageSetup();
}
}
}
return res;
}));
return res;
}));
});
})
.fail((err) => {
$("#article-container").html(`<article><h1>Error ${err.status}'</h1><p>${err.statusText}<br/>${err.responseText}</p>`);
console.error(err);
});
})
.fail((err) => {
$("#article-container").html(`<article><h1>Error ${err.status} :'(</h1><p>${err.statusText}<br/>${err.responseText}</p>`);
console.error(err);
});
}
else{
$("#article-container").html(`<article><h1>Error 404</h1><p>Page <code>${path}</code> does not exist</p>`);
}
}
@ -88,9 +95,9 @@ function smoothScrollSetup(){
{
$('html,body').animate(
{
scrollTop: (target.offset().top-20)//-200
scrollTop: (target.offset().top)
}, 400);
return false;
return true;
}
}
});
@ -126,7 +133,7 @@ function skillsPageSetup(){
let ctx = document.getElementById("whatilove_").getContext("2d");
let data = [
{ value: 5, color: "#ff706a", title: "Low-level programming" },
{ value: 4, color: "#efc26c", title: "Higher-level programming" },
{ value: 5, color: "#efc26c", title: "Higher-level programming" },
{ value: 5, color: "#76ef6c", title: "Linux Environment" },
{ value: 3, color: "#dd8ae5", title: "Project Management" },
{ value: 1, color: "#6cd6ef", title: "Web dev" }
@ -152,13 +159,13 @@ function skillsPageSetup(){
{
let ctx = document.getElementById("theory").getContext("2d");
let data = {
labels : ["Toolchains","Code generation","Algorithmic","Object-oriented design","Code quality", "Continuous integration"],
labels : ["Toolchains", "Code generation", "Algorithmic", "Architecture design", "Quality assurance", "CI / Automation"],
datasets : [{
fillColor : "rgba(83, 142, 193, 0.5)",
strokeColor : "#6091ff",
pointColor : "#1a76e2",
pointStrokeColor : "#fff",
data : [70,80,80,90,70,60]
data : [80, 80, 80, 90, 70, 80]
},{
strokeColor : "rgba(0,0,0,0)",
pointColor : "rgba(0,0,0,0)",
@ -173,13 +180,13 @@ function skillsPageSetup(){
{
var ctx = document.getElementById("proglanguages").getContext("2d");
var data = {
labels : ["C, C++11, D, Java", "Bash", "SQL", "VHDL", "ASM", "Matlab", "HTML5, CSS3, JS, PHP"],
labels : ["C, C++17, D, Java", "Bash", "SQL", "VHDL", "ASM", "Matlab", "HTML5, CSS3, JS, PHP"],
datasets : [{
fillColor : "rgba(83, 142, 193, 0.5)",
strokeColor : "rgb(96, 145, 255)",
pointColor : "rgb(26, 118, 226)",
pointStrokeColor : "#fff",
data : [100, 80, 90, 30, 40, 40, 60]
data : [100, 90, 80, 40, 40, 70, 60]
},{
strokeColor : "rgba(0,0,0,0)",
pointColor : "rgba(0,0,0,0)",
@ -194,7 +201,7 @@ function skillsPageSetup(){
{
var ctx = document.getElementById("linux").getContext("2d");
var data = {
labels : ["Ubuntu/Debian", "Archlinux", "Linux From Scratch", "Server admin", "X11/Graphical architecture", "Kernel"],
labels : ["Ubuntu/Debian", "Archlinux", "Linux From Scratch", "Server admin", "X11/Graphical stack", "Kernel"],
datasets : [{
fillColor : "rgba(83, 142, 193, 0.5)",
strokeColor : "rgb(96, 145, 255)",
@ -215,13 +222,13 @@ function skillsPageSetup(){
{
var ctx = document.getElementById("network").getContext("2d");
var data = {
labels : ["Cisco CCNA1 (Basis)", "Cisco CCNA2 (Routing)", "Cisco CCNA3", "Cisco CCNA4 (VLAN)", "PFSense (Unix distro for routers)"],
labels : ["Cisco CCNA1 (Basis)", "Cisco CCNA2 (Routing)", "Cisco CCNA3", "Cisco CCNA4 (VLAN)", "PFSense (Unix distro for routers)", "Linux network daemons"],
datasets : [{
fillColor : "rgba(83, 142, 193, 0.5)",
strokeColor : "rgb(96, 145, 255)",
pointColor : "rgb(26, 118, 226)",
pointStrokeColor : "#fff",
data : [100, 90, 50, 40, 70]
data : [100, 90, 50, 40, 70, 80]
},{
strokeColor : "rgba(0,0,0,0)",
pointColor : "rgba(0,0,0,0)",

View File

@ -2,27 +2,40 @@
# Welcome
<p style="text-align: center">
<img src="/img/avatar.png" title="My usual profil picture, created by LoadingArtist" class="avatar"/>
</p>
My name is _Thibaut CHARLES_
I am a French engineer who __love__ computer sciences, especially when it is related to __Linux__ and __low-level__ systems.
I am a French engineer who __love__ computer sciences, especially when it is comes to __Linux__ and __low level__ or __performance constrained__ programming.
## Contact me
Mail: ` thibaut.charles.fr@gmail.com`
- Mail: thibaut.charles.fr@gmail.com
- On [Matrix](https://matrix.org/blog/home/): https://matrix.to/#/@CromFr:matrix.org
-
```
PGP
8A4B D04D A8BB 3247 20C1
B842 568E 61BB FB6D A047
```
<a href="http://twitter.com/CromFR"><img class="nostyle" src="img/twitter.png" alt="Twitter"/></a>
<a href="http://www.facebook.com/thibaut.charles29"><img class="nostyle" src="img/facebook.png" alt="Facebook"/></a>
<a href="http://www.linkedin.com/pub/thibaut-charles/8a/3b4/2a4"><img class="nostyle" src="img/linkedin.png" alt="LinkedIn"/></a>
<a href="http://github.com/CromFr"><img class="nostyle" src="img/github.png" alt="GitHub"/></a>
<a href="http://git.thibautcharles.net/public/projects"><img class="nostyle" src="img/gitlab.png" alt="GitLab"/>
</a>
## Accounts
</article>
<article>
# CV
<a href="https://twitter.com/CromFR"><img class="nostyle" src="img/twitter.png" alt="Twitter"/></a>
<a href="https://github.com/CromFr"><img class="nostyle" src="img/github.png" alt="GitHub"/></a>
<a href="https://gitlab.com/CromFr"><img class="nostyle" src="img/gitlab.png" alt="GitLab"/></a>
<a href="https://git.thibautcharles.net/explore/repos"><img class="nostyle" src="img/gitea.png" alt="Self hosted Gitea"/></a>
Send me a mail at ` thibaut.charles.fr@gmail.com` and I'll send you my CV as soon as possible !
## Resume
Send me a mail at thibaut.charles.fr@gmail.com and I'll send you my resume as soon as possible !
## Legacy accounts (abandoned)
<a href="https://www.facebook.com/thibaut.charles29"><img class="nostyle" src="img/facebook.png" alt="Facebook"/></a>
<a href="https://www.linkedin.com/pub/thibaut-charles/8a/3b4/2a4"><img class="nostyle" src="img/linkedin.png" alt="LinkedIn"/></a>
</article>

View File

@ -16,11 +16,10 @@
<article>
# What I love
<p style="text-align:center;">
<canvas id="whatilove_" width="250" height="400"></canvas>
&emsp; &emsp;
<canvas id="howilearnt" width="250" height="400"></canvas>
</p>
<div class="canvas-container">
<canvas id="whatilove_" height="400px"></canvas>
<canvas id="howilearnt" height="400px"></canvas>
</div>
<a class="gototop" href="#i-am-"></a>
</article>
@ -63,20 +62,20 @@ _Following my high school diploma, I wanted to attend an engineering school spec
<article>
<h1 id="programming">Programming</h1>
<p style="text-align:center;">
<canvas id="theory" width="600px" height="300px"></canvas>
<canvas id="proglanguages" width="600px" height="300px"></canvas>
</p>
<div class="canvas-container">
<canvas id="theory" width="600px" height="300px"></canvas>
<canvas id="proglanguages" width="600px" height="300px"></canvas>
</div>
<a class="gototop" href="#i-am-"></a>
</article>
<article>
<h1 id="sysadmin">System Admin</h1>
<p style="text-align:center;">
<div class="canvas-container">
<canvas id="linux" width="600px" height="300px"></canvas>
<canvas id="network" width="600px" height="300px"></canvas>
</p>
</div>
<a class="gototop" href="#i-am-"></a>
</article>
@ -84,9 +83,9 @@ _Following my high school diploma, I wanted to attend an engineering school spec
<article>
<h1 id="projectmgr">Project Management</h1>
<p style="text-align:center;">
<div class="canvas-container">
<canvas id="tools" width="600px" height="300px"></canvas>
</p>
</div>
<a class="gototop" href="#i-am-"></a>
</article>

View File

@ -8,6 +8,9 @@ $ClrTrueBlack: #000000;
$FontTitle: 'Croissant One',cursive;
$FontText: 'Noto Serif',serif;
@import "fonts.scss";
@import "mixins.scss";
@import "nav.scss";
@import "section.scss";

View File

@ -305,6 +305,24 @@ $ArticleMaxWidth: 800px;
.center{
text-align: center;
}
.canvas-container {
display: flex;
width: 100%;
flex-wrap: wrap;
justify-content: space-around;
> * {
align-self: center;
}
}
img.avatar {
border: none;
border-radius: 100%;
max-height: 200px;
}
}