First
This commit is contained in:
		
						commit
						e7339f67ea
					
				
					 176 changed files with 2751 additions and 0 deletions
				
			
		
							
								
								
									
										3
									
								
								.gitattributes
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.gitattributes
									
										
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,3 @@
 | 
				
			||||||
 | 
					/static/** filter=lfs diff=lfs merge=lfs -text
 | 
				
			||||||
 | 
					/assets/images/** filter=lfs diff=lfs merge=lfs -text
 | 
				
			||||||
 | 
					/assets/videos/** filter=lfs diff=lfs merge=lfs -text
 | 
				
			||||||
							
								
								
									
										8
									
								
								.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.gitignore
									
										
									
									
										vendored
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,8 @@
 | 
				
			||||||
 | 
					# Generated files by hugo
 | 
				
			||||||
 | 
					/public/
 | 
				
			||||||
 | 
					/resources/_gen/
 | 
				
			||||||
 | 
					/assets/jsconfig.json
 | 
				
			||||||
 | 
					hugo_stats.json
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Temporary lock file while building
 | 
				
			||||||
 | 
					/.hugo_build.lock
 | 
				
			||||||
							
								
								
									
										5
									
								
								archetypes/default.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								archetypes/default.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,5 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '{{ .Date }}'
 | 
				
			||||||
 | 
					title = '{{ replace .File.ContentBaseName "-" " " | title }}'
 | 
				
			||||||
 | 
					tags = []
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/3dengine-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/3dengine-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/3dengine-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/3dengine-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/akadoc-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/akadoc-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/akadoc-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/akadoc-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-4.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-4.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-5.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-5.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-6.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-6.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-7.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-7.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-8.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/bornearcade-8.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/burgerquizz-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/burgerquizz-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/burgerquizz-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/burgerquizz-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/clubelec-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/clubelec-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/clubelec-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/clubelec-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/drone-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/drone-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/drone-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/drone-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/drone-3.webm
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/drone-3.webm
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-4.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/fan-controller-4.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/genesys-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/genesys-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/gitcourse-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/gitcourse-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hardenyourcode-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hardenyourcode-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hardenyourcode-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hardenyourcode-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hardenyourcode-3.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hardenyourcode-3.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-3.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-3.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-feedback-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-feedback-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-feedback-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/hedgeclog-feedback-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/lcda-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/lcda-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/lcda-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/lcda-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/lcda-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/lcda-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/lcdaaccounts-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/lcdaaccounts-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/lcdaaccounts-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/lcdaaccounts-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/ludum32-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/ludum32-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/ludum32-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/ludum32-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/matrixrun-wiidesktopvr.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/matrixrun-wiidesktopvr.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/metadata.yaml
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/metadata.yaml
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-4.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/microtransat-4.jpg
									 (Stored with Git LFS)
										
									
									
									
										Executable file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/navalwars-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/navalwars-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/navalwars-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/navalwars-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwn2-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwn2-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwn2-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwn2-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwn2-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwn2-3.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwngui-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwngui-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwngui-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwngui-2.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwnlog-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwnlog-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/nwnlog-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/nwnlog-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/rhumroll-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/rhumroll-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/served-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/served-1.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/served-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/served-2.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/served-3.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/served-3.png
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/stneverwinterscript-1.gif
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/stneverwinterscript-1.gif
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/images/posts/thales-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/images/posts/thales-1.jpg
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										70
									
								
								assets/sass/fonts.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								assets/sass/fonts.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,70 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* 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'), /* IE6-IE8 */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-regular.woff') format('woff'), /* Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
 | 
				
			||||||
 | 
					       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'), /* IE6-IE8 */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-italic.woff') format('woff'), /* Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
 | 
				
			||||||
 | 
					       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'), /* IE6-IE8 */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-700.woff') format('woff'), /* Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
 | 
				
			||||||
 | 
					       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'), /* IE6-IE8 */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-700italic.woff') format('woff'), /* Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/noto-serif-v6-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
 | 
				
			||||||
 | 
					       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'), /* IE6-IE8 */
 | 
				
			||||||
 | 
					       url('/fonts/croissant-one-v5-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/croissant-one-v5-latin-regular.woff') format('woff'), /* Modern Browsers */
 | 
				
			||||||
 | 
					       url('/fonts/croissant-one-v5-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
 | 
				
			||||||
 | 
					       url('/fonts/croissant-one-v5-latin-regular.svg#CroissantOne') format('svg'); /* Legacy iOS */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										28
									
								
								assets/sass/lightbox-ovr.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								assets/sass/lightbox-ovr.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,28 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#lightbox{
 | 
				
			||||||
 | 
						.lb-cancel {
 | 
				
			||||||
 | 
							background-image: url(#{$ImgPath}/ui/loading.gif)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.lb-nav a.lb-prev{
 | 
				
			||||||
 | 
							background-image: url(#{$ImgPath}/ui/prev.png);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.lb-nav a.lb-next {
 | 
				
			||||||
 | 
							background-image: url(#{$ImgPath}/ui/next.png);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						.lb-data .lb-close {
 | 
				
			||||||
 | 
							background-image: url(#{$ImgPath}/ui/close.png);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						.lb-outerContainer {
 | 
				
			||||||
 | 
							background-image: url(#{$ImgPath}/ui/bgdark.png);
 | 
				
			||||||
 | 
							border-radius: 10px;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						.lb-image {
 | 
				
			||||||
 | 
							border: 4px solid $ClrBlack;
 | 
				
			||||||
 | 
							border-radius: 10px;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										92
									
								
								assets/sass/main.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								assets/sass/main.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,92 @@
 | 
				
			||||||
 | 
					$ClrWhite: #FAFAFA;
 | 
				
			||||||
 | 
					$ClrTrueWhite: #FFFFFF;
 | 
				
			||||||
 | 
					$ClrText: #3A4145;
 | 
				
			||||||
 | 
					$ClrBlack: #202020;
 | 
				
			||||||
 | 
					$ClrTrueBlack: #000000;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$FontTitle: 'Croissant One',cursive;
 | 
				
			||||||
 | 
					$FontText: 'Noto Serif',serif;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$ImgPath: /images;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@import "fonts.scss";
 | 
				
			||||||
 | 
					@import "nav.scss";
 | 
				
			||||||
 | 
					@import "section.scss";
 | 
				
			||||||
 | 
					@import "monokai.scss";
 | 
				
			||||||
 | 
					@import "lightbox-ovr.scss";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					body{
 | 
				
			||||||
 | 
						background-image: url(/images/ui/gnome3.jpg);
 | 
				
			||||||
 | 
						background-size: cover;
 | 
				
			||||||
 | 
						background-attachment: fixed;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						font-family: $FontText;
 | 
				
			||||||
 | 
						font-size: 1.8rem;
 | 
				
			||||||
 | 
						color: #3A4145;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					img.avatar {
 | 
				
			||||||
 | 
					    border: none;
 | 
				
			||||||
 | 
					    border-radius: 0 0 50% 50%;
 | 
				
			||||||
 | 
					    max-height: 200px;
 | 
				
			||||||
 | 
					    filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.4));
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					=====================================================================
 | 
				
			||||||
 | 
						Spécifique aux pages
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@media screen and (min-width: $ArticleMaxWidth + $NavLeft_Width) {
 | 
				
			||||||
 | 
						div#content{
 | 
				
			||||||
 | 
							left: $NavLeft_Width;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						div#left {
 | 
				
			||||||
 | 
							left: 0px;
 | 
				
			||||||
 | 
							.arrow{
 | 
				
			||||||
 | 
								opacity: 0;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					@media screen and (max-width: $ArticleMaxWidth + $NavLeft_Width) {
 | 
				
			||||||
 | 
					    div#content {
 | 
				
			||||||
 | 
					        main {
 | 
				
			||||||
 | 
					            article {
 | 
				
			||||||
 | 
					                max-width: 100%;
 | 
				
			||||||
 | 
					                border-radius: 0;
 | 
				
			||||||
 | 
					                h1:first-child {
 | 
				
			||||||
 | 
					                    border-radius: 0;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					body[data-page=home] {
 | 
				
			||||||
 | 
						div#content{
 | 
				
			||||||
 | 
							left: $NavLeft_Width;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						div#left{
 | 
				
			||||||
 | 
							left: 0px;
 | 
				
			||||||
 | 
							.arrow{
 | 
				
			||||||
 | 
								opacity: 0;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					body.skills{
 | 
				
			||||||
 | 
						main{
 | 
				
			||||||
 | 
							article{
 | 
				
			||||||
 | 
								.skillexcellent, .skillgood, .skillmed, .skillknown, .skillperso, .skillstudy{
 | 
				
			||||||
 | 
									padding: 0 3px 0 3px;
 | 
				
			||||||
 | 
									border-radius: 5px;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								.skillexcellent	{background: linear-gradient(#00C107, #00A806);}
 | 
				
			||||||
 | 
								.skillgood		{background: linear-gradient(#73C100, #64A800);}
 | 
				
			||||||
 | 
								.skillmed		{background: linear-gradient(#BAC100, #A2A800);}
 | 
				
			||||||
 | 
								.skillknown		{background: linear-gradient(#C18F00, #A87D00);}
 | 
				
			||||||
 | 
								.skillperso		{border-style: solid; border-width: 2px; border-color: #8000FF;}
 | 
				
			||||||
 | 
								.skillstudy		{border-style: solid; border-width: 2px; border-color: #9E9E9E;}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					} */
 | 
				
			||||||
							
								
								
									
										154
									
								
								assets/sass/monokai.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										154
									
								
								assets/sass/monokai.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,154 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Monokai Sublime style. Derived from Monokai by noformnocontent http://nn.mit-license.org/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs {
 | 
				
			||||||
 | 
					  display: block;
 | 
				
			||||||
 | 
					  overflow-x: auto;
 | 
				
			||||||
 | 
					  padding: 0.5em;
 | 
				
			||||||
 | 
					  background: #23241f;
 | 
				
			||||||
 | 
					  -webkit-text-size-adjust: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs,
 | 
				
			||||||
 | 
					.hljs-tag,
 | 
				
			||||||
 | 
					.css .hljs-rule,
 | 
				
			||||||
 | 
					.css .hljs-value,
 | 
				
			||||||
 | 
					.aspectj .hljs-function,
 | 
				
			||||||
 | 
					.css .hljs-function
 | 
				
			||||||
 | 
					.hljs-preprocessor,
 | 
				
			||||||
 | 
					.hljs-pragma {
 | 
				
			||||||
 | 
					  color: #f8f8f2;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-strongemphasis,
 | 
				
			||||||
 | 
					.hljs-strong,
 | 
				
			||||||
 | 
					.hljs-emphasis {
 | 
				
			||||||
 | 
					  color: #a8a8a2;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-bullet,
 | 
				
			||||||
 | 
					.hljs-blockquote,
 | 
				
			||||||
 | 
					.hljs-horizontal_rule,
 | 
				
			||||||
 | 
					.hljs-number,
 | 
				
			||||||
 | 
					.hljs-regexp,
 | 
				
			||||||
 | 
					.alias .hljs-keyword,
 | 
				
			||||||
 | 
					.hljs-literal,
 | 
				
			||||||
 | 
					.hljs-hexcolor {
 | 
				
			||||||
 | 
					  color: #ae81ff;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-tag .hljs-value,
 | 
				
			||||||
 | 
					.hljs-code,
 | 
				
			||||||
 | 
					.hljs-title,
 | 
				
			||||||
 | 
					.css .hljs-class,
 | 
				
			||||||
 | 
					.hljs-class .hljs-title:last-child {
 | 
				
			||||||
 | 
					  color: #a6e22e;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-link_url {
 | 
				
			||||||
 | 
					  font-size: 80%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-strong,
 | 
				
			||||||
 | 
					.hljs-strongemphasis {
 | 
				
			||||||
 | 
					  font-weight: bold;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-emphasis,
 | 
				
			||||||
 | 
					.hljs-strongemphasis,
 | 
				
			||||||
 | 
					.hljs-class .hljs-title:last-child,
 | 
				
			||||||
 | 
					.hljs-typename {
 | 
				
			||||||
 | 
					  font-style: italic;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-keyword,
 | 
				
			||||||
 | 
					.ruby .hljs-class .hljs-keyword:first-child,
 | 
				
			||||||
 | 
					.ruby .hljs-function .hljs-keyword,
 | 
				
			||||||
 | 
					.hljs-function,
 | 
				
			||||||
 | 
					.hljs-change,
 | 
				
			||||||
 | 
					.hljs-winutils,
 | 
				
			||||||
 | 
					.hljs-flow,
 | 
				
			||||||
 | 
					.nginx .hljs-title,
 | 
				
			||||||
 | 
					.tex .hljs-special,
 | 
				
			||||||
 | 
					.hljs-header,
 | 
				
			||||||
 | 
					.hljs-attribute,
 | 
				
			||||||
 | 
					.hljs-symbol,
 | 
				
			||||||
 | 
					.hljs-symbol .hljs-string,
 | 
				
			||||||
 | 
					.hljs-tag .hljs-title,
 | 
				
			||||||
 | 
					.hljs-value,
 | 
				
			||||||
 | 
					.alias .hljs-keyword:first-child,
 | 
				
			||||||
 | 
					.css .hljs-tag,
 | 
				
			||||||
 | 
					.css .unit,
 | 
				
			||||||
 | 
					.css .hljs-important {
 | 
				
			||||||
 | 
					  color: #f92672;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-function .hljs-keyword,
 | 
				
			||||||
 | 
					.hljs-class .hljs-keyword:first-child,
 | 
				
			||||||
 | 
					.hljs-aspect .hljs-keyword:first-child,
 | 
				
			||||||
 | 
					.hljs-constant,
 | 
				
			||||||
 | 
					.hljs-typename,
 | 
				
			||||||
 | 
					.hljs-name,
 | 
				
			||||||
 | 
					.css .hljs-attribute {
 | 
				
			||||||
 | 
					  color: #66d9ef;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-variable,
 | 
				
			||||||
 | 
					.hljs-params,
 | 
				
			||||||
 | 
					.hljs-class .hljs-title,
 | 
				
			||||||
 | 
					.hljs-aspect .hljs-title {
 | 
				
			||||||
 | 
					  color: #f8f8f2;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-string,
 | 
				
			||||||
 | 
					.css .hljs-id,
 | 
				
			||||||
 | 
					.hljs-subst,
 | 
				
			||||||
 | 
					.hljs-type,
 | 
				
			||||||
 | 
					.ruby .hljs-class .hljs-parent,
 | 
				
			||||||
 | 
					.hljs-built_in,
 | 
				
			||||||
 | 
					.django .hljs-template_tag,
 | 
				
			||||||
 | 
					.django .hljs-variable,
 | 
				
			||||||
 | 
					.smalltalk .hljs-class,
 | 
				
			||||||
 | 
					.django .hljs-filter .hljs-argument,
 | 
				
			||||||
 | 
					.smalltalk .hljs-localvars,
 | 
				
			||||||
 | 
					.smalltalk .hljs-array,
 | 
				
			||||||
 | 
					.hljs-attr_selector,
 | 
				
			||||||
 | 
					.hljs-pseudo,
 | 
				
			||||||
 | 
					.hljs-addition,
 | 
				
			||||||
 | 
					.hljs-stream,
 | 
				
			||||||
 | 
					.hljs-envvar,
 | 
				
			||||||
 | 
					.apache .hljs-tag,
 | 
				
			||||||
 | 
					.apache .hljs-cbracket,
 | 
				
			||||||
 | 
					.tex .hljs-command,
 | 
				
			||||||
 | 
					.hljs-prompt,
 | 
				
			||||||
 | 
					.hljs-link_label,
 | 
				
			||||||
 | 
					.hljs-link_url {
 | 
				
			||||||
 | 
					  color: #e6db74;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.hljs-comment,
 | 
				
			||||||
 | 
					.hljs-annotation,
 | 
				
			||||||
 | 
					.hljs-decorator,
 | 
				
			||||||
 | 
					.hljs-pi,
 | 
				
			||||||
 | 
					.hljs-doctype,
 | 
				
			||||||
 | 
					.hljs-deletion,
 | 
				
			||||||
 | 
					.hljs-shebang,
 | 
				
			||||||
 | 
					.apache .hljs-sqbracket,
 | 
				
			||||||
 | 
					.tex .hljs-formula {
 | 
				
			||||||
 | 
					  color: #75715e;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.coffeescript .javascript,
 | 
				
			||||||
 | 
					.javascript .xml,
 | 
				
			||||||
 | 
					.tex .hljs-formula,
 | 
				
			||||||
 | 
					.xml .javascript,
 | 
				
			||||||
 | 
					.xml .vbscript,
 | 
				
			||||||
 | 
					.xml .css,
 | 
				
			||||||
 | 
					.xml .hljs-cdata,
 | 
				
			||||||
 | 
					.xml .php,
 | 
				
			||||||
 | 
					.php .xml {
 | 
				
			||||||
 | 
					  opacity: 0.5;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										122
									
								
								assets/sass/nav.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										122
									
								
								assets/sass/nav.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,122 @@
 | 
				
			||||||
 | 
					$NavLeft_Width: 200px;
 | 
				
			||||||
 | 
					$NavLeft_HiddenWidth: 20px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					div#left {
 | 
				
			||||||
 | 
					    position: fixed;
 | 
				
			||||||
 | 
					    left: $NavLeft_HiddenWidth - $NavLeft_Width;
 | 
				
			||||||
 | 
					    width: $NavLeft_Width;
 | 
				
			||||||
 | 
					    top: 0;
 | 
				
			||||||
 | 
					    bottom: 0;
 | 
				
			||||||
 | 
					    overflow-x: hidden;
 | 
				
			||||||
 | 
					    overflow-y: auto;
 | 
				
			||||||
 | 
					    z-index: 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    border-style: solid;
 | 
				
			||||||
 | 
					    border-width: 0 1px 0 0;
 | 
				
			||||||
 | 
					    border-color: $ClrTrueBlack;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    background-image: url(#{$ImgPath}/ui/bggray.png);
 | 
				
			||||||
 | 
					    box-shadow: -4px 0px 10px $ClrBlack inset;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    text-align: center;
 | 
				
			||||||
 | 
					    font-size: large;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    transition-property: left;
 | 
				
			||||||
 | 
					    transition-duration: 0.2s;
 | 
				
			||||||
 | 
					    transition-delay: 0.1s;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    .arrow {
 | 
				
			||||||
 | 
					        position: absolute;
 | 
				
			||||||
 | 
					        right: 0;
 | 
				
			||||||
 | 
					        top: 50%;
 | 
				
			||||||
 | 
					        height: 35px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        transition-property: opacity;
 | 
				
			||||||
 | 
					        transition-duration: 0.2s;
 | 
				
			||||||
 | 
					        transition-delay: 0.1s;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // profile pic =====================================
 | 
				
			||||||
 | 
					    header {
 | 
				
			||||||
 | 
					        margin: 20px 0 10px 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        figcaption {
 | 
				
			||||||
 | 
					            color: $ClrWhite;
 | 
				
			||||||
 | 
					            font-family: $FontTitle;
 | 
				
			||||||
 | 
					            font-weight: bold;
 | 
				
			||||||
 | 
					            font-style: italic;
 | 
				
			||||||
 | 
					            font-size: 1.2em;
 | 
				
			||||||
 | 
					            text-decoration: none;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        img {
 | 
				
			||||||
 | 
					            max-width: 80%;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    nav {
 | 
				
			||||||
 | 
					        ul {
 | 
				
			||||||
 | 
					            list-style-type: none;
 | 
				
			||||||
 | 
					            padding: 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            // <a> =====================================
 | 
				
			||||||
 | 
					            a {
 | 
				
			||||||
 | 
					                outline: none !important;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                display: block;
 | 
				
			||||||
 | 
					                padding: 5px;
 | 
				
			||||||
 | 
					                margin: 7px 20px 7px 20px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                background-color: #303030;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                border-style: solid;
 | 
				
			||||||
 | 
					                border-width: 1px;
 | 
				
			||||||
 | 
					                border-color: #000;
 | 
				
			||||||
 | 
					                border-radius: 3px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                color: $ClrWhite;
 | 
				
			||||||
 | 
					                font-weight: bold;
 | 
				
			||||||
 | 
					                text-decoration: none;
 | 
				
			||||||
 | 
					                text-align: center;
 | 
				
			||||||
 | 
					                font-size: 1.2em;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                transition-property: border-color background-color;
 | 
				
			||||||
 | 
					                transition-duration: 0.1s;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            a:hover {
 | 
				
			||||||
 | 
					                background-color: #383838;
 | 
				
			||||||
 | 
					                border-color: #202020;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            a:active,
 | 
				
			||||||
 | 
					            a.active {
 | 
				
			||||||
 | 
					                background-color: #215d9c;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            a.external:after {
 | 
				
			||||||
 | 
					                content: "↳ ";
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            a.external:hover {
 | 
				
			||||||
 | 
					                border-color: #013d6c;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            a.logo {
 | 
				
			||||||
 | 
					                display: inline-block;
 | 
				
			||||||
 | 
					                border-style: none;
 | 
				
			||||||
 | 
					                background: none;
 | 
				
			||||||
 | 
					                img {
 | 
				
			||||||
 | 
					                    height: 48px;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    // <footer> =====================================
 | 
				
			||||||
 | 
					    footer {
 | 
				
			||||||
 | 
					        margin-top: 20px;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					div#left:hover,
 | 
				
			||||||
 | 
					div#left:active {
 | 
				
			||||||
 | 
					    left: 0px;
 | 
				
			||||||
 | 
					    .arrow {
 | 
				
			||||||
 | 
					        opacity: 0;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										419
									
								
								assets/sass/section.scss
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										419
									
								
								assets/sass/section.scss
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,419 @@
 | 
				
			||||||
 | 
					$ArticleMaxWidth: 800px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@keyframes UnwrapHeader {
 | 
				
			||||||
 | 
					    from {
 | 
				
			||||||
 | 
					        margin-left: 40%;
 | 
				
			||||||
 | 
					        margin-right: 40%;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    to {
 | 
				
			||||||
 | 
					        margin-left: 40px;
 | 
				
			||||||
 | 
					        margin-right: 40px;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$ArticleBorderWidth: 4px;
 | 
				
			||||||
 | 
					$ArticlePadding: 20px;
 | 
				
			||||||
 | 
					$ArticleBorderRadius: 20px;
 | 
				
			||||||
 | 
					$ArticleFinalMargins: #{$ArticleBorderWidth + $ArticleBorderRadius};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					div#content {
 | 
				
			||||||
 | 
					    position: absolute;
 | 
				
			||||||
 | 
					    left: 20px;
 | 
				
			||||||
 | 
					    right: 0px;
 | 
				
			||||||
 | 
					    transition-property: left;
 | 
				
			||||||
 | 
					    transition-duration: 0.2s;
 | 
				
			||||||
 | 
					    transition-delay: 0.1s;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    header {
 | 
				
			||||||
 | 
					        margin: 30px 30px 60px 30px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        color: $ClrWhite;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        font-family: $FontText;
 | 
				
			||||||
 | 
					        font-style: italic;
 | 
				
			||||||
 | 
					        font-size: 1.3em;
 | 
				
			||||||
 | 
					        text-align: center;
 | 
				
			||||||
 | 
					        text-shadow: 0 0 10px $ClrTrueBlack;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        border-style: solid;
 | 
				
			||||||
 | 
					        border-width: 0 5px 0 5px;
 | 
				
			||||||
 | 
					        border-color: $ClrWhite;
 | 
				
			||||||
 | 
					        border-radius: 20px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        overflow: hidden;
 | 
				
			||||||
 | 
					        animation: UnwrapHeader 1.5s;
 | 
				
			||||||
 | 
					        white-space: nowrap;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    article {
 | 
				
			||||||
 | 
					        margin-left: auto;
 | 
				
			||||||
 | 
					        margin-right: auto;
 | 
				
			||||||
 | 
					        padding: $ArticlePadding;
 | 
				
			||||||
 | 
					        padding-top: 0;
 | 
				
			||||||
 | 
					        margin-bottom: 3em;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        color: $ClrBlack;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.8);
 | 
				
			||||||
 | 
					        border-style: solid;
 | 
				
			||||||
 | 
					        border-width: $ArticleBorderWidth;
 | 
				
			||||||
 | 
					        border-color: #ffffff;
 | 
				
			||||||
 | 
					        border-radius: $ArticleBorderRadius;
 | 
				
			||||||
 | 
					        background-color: $ClrWhite;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        max-width: $ArticleMaxWidth;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        font-size: 0.6em;
 | 
				
			||||||
 | 
					        line-height: 1.3em;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        transition-property: border-radius;
 | 
				
			||||||
 | 
					        transition-duration: 0.5s;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        h1:first-child {
 | 
				
			||||||
 | 
					            margin: 0;
 | 
				
			||||||
 | 
					            margin-top: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					            margin-left: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					            width: 100%;
 | 
				
			||||||
 | 
					            padding: 0.6em $ArticleFinalMargins;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            border-radius: $ArticleBorderRadius $ArticleBorderRadius 0 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            background-color: #215d9c;
 | 
				
			||||||
 | 
					            background-image: url("#{$ImgPath}/ui/stripes.png");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            color: $ClrWhite;
 | 
				
			||||||
 | 
					            font-family: $FontTitle;
 | 
				
			||||||
 | 
					            font-weight: bold;
 | 
				
			||||||
 | 
					            font-size: 1.7em;
 | 
				
			||||||
 | 
					            text-align: left;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            letter-spacing: -0.03em;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            transition-property: border-radius;
 | 
				
			||||||
 | 
					            transition-duration: 0.5s;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            a {
 | 
				
			||||||
 | 
					                color: $ClrWhite;
 | 
				
			||||||
 | 
					                text-decoration: none;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                &:hover {
 | 
				
			||||||
 | 
					                    text-decoration: underline;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            img {
 | 
				
			||||||
 | 
					                border: none;
 | 
				
			||||||
 | 
					                float: right;
 | 
				
			||||||
 | 
					                display: inline;
 | 
				
			||||||
 | 
					                margin: auto;
 | 
				
			||||||
 | 
					                height: 1em;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                &.left {
 | 
				
			||||||
 | 
					                    float: left;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        h2 {
 | 
				
			||||||
 | 
					            margin: 0 (-$ArticleFinalMargins);
 | 
				
			||||||
 | 
					            padding: 0.4em $ArticleFinalMargins;
 | 
				
			||||||
 | 
					            border-top: 1px solid #d5d5d5;
 | 
				
			||||||
 | 
					            border-bottom: 1px solid #d5d5d5;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            background-image: url("#{$ImgPath}/ui/stripes.png");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            color: $ClrText;
 | 
				
			||||||
 | 
					            font-family: $FontTitle;
 | 
				
			||||||
 | 
					            // padding-left: 10px;
 | 
				
			||||||
 | 
					            font-size: x-large;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            a,
 | 
				
			||||||
 | 
					            a:visited {
 | 
				
			||||||
 | 
					                color: $ClrText;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        h3 {
 | 
				
			||||||
 | 
					            color: $ClrText;
 | 
				
			||||||
 | 
					            font-family: $FontTitle;
 | 
				
			||||||
 | 
					            margin-bottom: 0.5em;
 | 
				
			||||||
 | 
					            font-size: large;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        h4 {
 | 
				
			||||||
 | 
					            color: $ClrText;
 | 
				
			||||||
 | 
					            font-family: $FontTitle;
 | 
				
			||||||
 | 
					            margin-bottom: 0.5em;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        hr {
 | 
				
			||||||
 | 
					            margin-left: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					            width: calc(100% + #{$ArticleFinalMargins} * 2);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            border-style: solid;
 | 
				
			||||||
 | 
					            border-width: 0.2em;
 | 
				
			||||||
 | 
					            border-color: rgba(0, 0, 0, 0.1);
 | 
				
			||||||
 | 
					            border-radius: 1px;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        blockquote {
 | 
				
			||||||
 | 
					            position: relative;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            padding: 0.5em 1em;
 | 
				
			||||||
 | 
					            margin: 10px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            background-color: #eee;
 | 
				
			||||||
 | 
					            border-radius: 0.5em;
 | 
				
			||||||
 | 
					            font-style: italic;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            legend {
 | 
				
			||||||
 | 
					                position: relative;
 | 
				
			||||||
 | 
					                right: -0.5em;
 | 
				
			||||||
 | 
					                height: 0;
 | 
				
			||||||
 | 
					                bottom: 1em;
 | 
				
			||||||
 | 
					                color: #888;
 | 
				
			||||||
 | 
					                text-align: right;
 | 
				
			||||||
 | 
					                font-size: 0.9em;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            &:after {
 | 
				
			||||||
 | 
					                display: block;
 | 
				
			||||||
 | 
					                position: absolute;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                content: "";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                width: 0;
 | 
				
			||||||
 | 
					                top: 20px;
 | 
				
			||||||
 | 
					                left: -20px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                border-style: solid;
 | 
				
			||||||
 | 
					                border-width: 15px 20px 15px 0;
 | 
				
			||||||
 | 
					                border-color: transparent #eee;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        img,
 | 
				
			||||||
 | 
					        video,
 | 
				
			||||||
 | 
					        iframe {
 | 
				
			||||||
 | 
					            &:not(.raw) &:not(.avatar) {
 | 
				
			||||||
 | 
					                max-height: 150px;
 | 
				
			||||||
 | 
					                width: auto;
 | 
				
			||||||
 | 
					                vertical-align: middle;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                margin: 5px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                border: 3px solid black;
 | 
				
			||||||
 | 
					                border-radius: 2px;
 | 
				
			||||||
 | 
					                transition-property: border-color;
 | 
				
			||||||
 | 
					                transition-duration: 0.3s;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        video {
 | 
				
			||||||
 | 
					            width: 80%;
 | 
				
			||||||
 | 
					            height: auto;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        a {
 | 
				
			||||||
 | 
					            color: #215d9c;
 | 
				
			||||||
 | 
					            img:hover,
 | 
				
			||||||
 | 
					            video:hover,
 | 
				
			||||||
 | 
					            iframe:hover {
 | 
				
			||||||
 | 
					                border-color: #808080;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            &:hover {
 | 
				
			||||||
 | 
					                color: #2b7acc;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            &.gototop {
 | 
				
			||||||
 | 
					                display: block;
 | 
				
			||||||
 | 
					                width: 100%;
 | 
				
			||||||
 | 
					                height: 28px;
 | 
				
			||||||
 | 
					                background-image: url(#{$ImgPath}/ui/gototop.svg);
 | 
				
			||||||
 | 
					                background-position: center;
 | 
				
			||||||
 | 
					                background-size: contain;
 | 
				
			||||||
 | 
					                background-repeat: no-repeat;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        strong {
 | 
				
			||||||
 | 
					            color: #2f3a45;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        img.nostyle {
 | 
				
			||||||
 | 
					            height: auto;
 | 
				
			||||||
 | 
					            border: 0;
 | 
				
			||||||
 | 
					            border-radius: 0;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        img.fill {
 | 
				
			||||||
 | 
					            width: 100%;
 | 
				
			||||||
 | 
					            height: auto;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        .cinema {
 | 
				
			||||||
 | 
					            margin: 0;
 | 
				
			||||||
 | 
					            margin-left: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					            width: 100%;
 | 
				
			||||||
 | 
					            padding: 10px $ArticleFinalMargins;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            border-top: 1px solid #000;
 | 
				
			||||||
 | 
					            border-bottom: 1px solid #000;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            color: $ClrWhite;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            background-image: url("#{$ImgPath}/ui/bgdark.png");
 | 
				
			||||||
 | 
					            box-shadow: 0px 0px 10px #000 inset;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            img,
 | 
				
			||||||
 | 
					            video,
 | 
				
			||||||
 | 
					            iframe {
 | 
				
			||||||
 | 
					                border-width: 1px;
 | 
				
			||||||
 | 
					                border-radius: 0;
 | 
				
			||||||
 | 
					                height: 150px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                margin: 5px -5px;
 | 
				
			||||||
 | 
					                border-left: 5px solid #000;
 | 
				
			||||||
 | 
					                border-right: 5px solid #000;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            a {
 | 
				
			||||||
 | 
					                margin: 0.5em;
 | 
				
			||||||
 | 
					                img:hover,
 | 
				
			||||||
 | 
					                video:hover,
 | 
				
			||||||
 | 
					                iframe:hover {
 | 
				
			||||||
 | 
					                    border-color: #333;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            &:first-child {
 | 
				
			||||||
 | 
					                margin-top: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					                padding-top: 20px;
 | 
				
			||||||
 | 
					                border-radius: 20px 20px 0 0;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            &:last-child {
 | 
				
			||||||
 | 
					                margin-bottom: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					                padding-bottom: 20px;
 | 
				
			||||||
 | 
					                border-radius: 0 0 20px 20px;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            &.centered{
 | 
				
			||||||
 | 
					                text-align: center;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        code {
 | 
				
			||||||
 | 
					            font-size: 0.9em;
 | 
				
			||||||
 | 
					            padding: 0 0.3em;
 | 
				
			||||||
 | 
					            border-radius: 5px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            background-color: #ccc;
 | 
				
			||||||
 | 
					            border: 1px solid #888;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // Code blocks
 | 
				
			||||||
 | 
					        pre {
 | 
				
			||||||
 | 
					            border-top: 1px solid #000;
 | 
				
			||||||
 | 
					            border-bottom: 1px solid #000;
 | 
				
			||||||
 | 
					            padding: 0.5em;
 | 
				
			||||||
 | 
					            border-radius: 10px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            display: inline-block;
 | 
				
			||||||
 | 
					            vertical-align: top;
 | 
				
			||||||
 | 
					            margin: 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            color: $ClrWhite;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            background-image: url("#{$ImgPath}/ui/bggray.png");
 | 
				
			||||||
 | 
					            box-shadow: 0px 0px 10px #000 inset;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            code,
 | 
				
			||||||
 | 
					            pre {
 | 
				
			||||||
 | 
					                margin-bottom: 0px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                padding: 0;
 | 
				
			||||||
 | 
					                border-radius: 0;
 | 
				
			||||||
 | 
					                background: none;
 | 
				
			||||||
 | 
					                border: none;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        > pre {
 | 
				
			||||||
 | 
					            display: block;
 | 
				
			||||||
 | 
					            margin-left: -$ArticleFinalMargins;
 | 
				
			||||||
 | 
					            width: 100%;
 | 
				
			||||||
 | 
					            padding: 10px $ArticleFinalMargins;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        figure {
 | 
				
			||||||
 | 
					            margin-bottom: 15px;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            figcaption {
 | 
				
			||||||
 | 
					                font-size: small;
 | 
				
			||||||
 | 
					                font-style: italic;
 | 
				
			||||||
 | 
					                text-decoration: none;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        ul {
 | 
				
			||||||
 | 
					            margin-top: 5px;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        li {
 | 
				
			||||||
 | 
					            margin-bottom: 5px;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        .center {
 | 
				
			||||||
 | 
					            text-align: center;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        .canvas-container {
 | 
				
			||||||
 | 
					            display: flex;
 | 
				
			||||||
 | 
					            width: 100%;
 | 
				
			||||||
 | 
					            flex-wrap: wrap;
 | 
				
			||||||
 | 
					            justify-content: space-around;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            > * {
 | 
				
			||||||
 | 
					                align-self: center;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        div.tags {
 | 
				
			||||||
 | 
					            margin-right: -$ArticleBorderRadius / 2;
 | 
				
			||||||
 | 
					            margin-bottom: -$ArticleBorderRadius / 2;
 | 
				
			||||||
 | 
					            text-align: right;
 | 
				
			||||||
 | 
					            font-size: 0.9em;
 | 
				
			||||||
 | 
					            a {
 | 
				
			||||||
 | 
					                background-color: #bfd6ef;
 | 
				
			||||||
 | 
					                border-radius:0.25em;
 | 
				
			||||||
 | 
					                padding: 0.1em 0.3em;
 | 
				
			||||||
 | 
					                margin-left: 0.3em;
 | 
				
			||||||
 | 
					                &:before {
 | 
				
			||||||
 | 
					                    display: inline-block;
 | 
				
			||||||
 | 
					                    position: relative;
 | 
				
			||||||
 | 
					                    left: -0.7em;
 | 
				
			||||||
 | 
					                    margin-right: -0.5em;
 | 
				
			||||||
 | 
					                    top: -0.12em;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    content: "";
 | 
				
			||||||
 | 
					                    vertical-align: middle;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    border-style: solid;
 | 
				
			||||||
 | 
					                    border-width: 0.5em 0.5em 0.5em 0;
 | 
				
			||||||
 | 
					                    border-color: transparent #bfd6ef;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					body[data-width="small"] {
 | 
				
			||||||
 | 
					    div#content {
 | 
				
			||||||
 | 
					        main {
 | 
				
			||||||
 | 
					            article {
 | 
				
			||||||
 | 
					                max-width: 100%;
 | 
				
			||||||
 | 
					                border-radius: 0;
 | 
				
			||||||
 | 
					                h1 {
 | 
				
			||||||
 | 
					                    border-radius: 0;
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					} */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.spacer {
 | 
				
			||||||
 | 
					    height: 60vh;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										
											BIN
										
									
								
								assets/videos/3dprinter.mp4
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/videos/3dprinter.mp4
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/videos/3dprinter.webm
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/videos/3dprinter.webm
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/videos/drone.mp4
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/videos/drone.mp4
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/videos/matrixrun.mp4
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/videos/matrixrun.mp4
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								assets/videos/matrixrun.webm
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/videos/matrixrun.webm
									 (Stored with Git LFS)
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										43
									
								
								content/_index.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								content/_index.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,43 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Home'
 | 
				
			||||||
 | 
					[params]
 | 
				
			||||||
 | 
					  page = 'home'
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Welcome
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<p style="text-align: center">
 | 
				
			||||||
 | 
					    <img class="avatar" src="/images/avatar.png" alt="My usual profil picture, created by LoadingArtist"/>
 | 
				
			||||||
 | 
					</p>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I'm _Thibaut CHARLES_, AKA CromFr
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I am a French engineer who __loves__ computer sciences, especially when it is related to __Linux__ and __low level__ or __performance constrained__ programming.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Contact me
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Mail: thibaut.charles.fr@gmail.com
 | 
				
			||||||
 | 
					- On [Matrix](https://matrix.org/blog/home/): [@CromFr:matrix.org](https://matrix.to/#/@CromFr:matrix.org)
 | 
				
			||||||
 | 
					- [PGP key](http://keys.gnupg.net/pks/lookup?op=get&search=0x568E61BBFB6DA047): `8A4B D04D A8BB 3247 20C1 B842 568E 61BB FB6D A047`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Accounts
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[](https://toot.cat/@CromFr)
 | 
				
			||||||
 | 
					[](https://bsky.app/profile/tcharles.fr)
 | 
				
			||||||
 | 
					.
 | 
				
			||||||
 | 
					[](https://gitlab.com/CromFr)
 | 
				
			||||||
 | 
					[](https://github.com/CromFr)
 | 
				
			||||||
 | 
					[](https://git.tcharles.fr)
 | 
				
			||||||
 | 
					.
 | 
				
			||||||
 | 
					[](https://keybase.io/crom)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Resume
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Send me an email at thibaut.charles.fr@gmail.com and I'll send you my resume as soon as possible!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Legacy accounts (abandoned)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[](https://www.facebook.com/thibaut.charles29)
 | 
				
			||||||
 | 
					[](https://www.linkedin.com/pub/thibaut-charles/8a/3b4/2a4)
 | 
				
			||||||
 | 
					[](https://twitter.com/CromFR)
 | 
				
			||||||
							
								
								
									
										118
									
								
								content/aboutme/_index.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										118
									
								
								content/aboutme/_index.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,118 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2025-02-05T15:20:58+01:00'
 | 
				
			||||||
 | 
					title = 'About me'
 | 
				
			||||||
 | 
					weight = 20
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					dzdqdqzd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<article>
 | 
				
			||||||
 | 
					# I am...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### [Passionate ♥](#what-i-love)
 | 
				
			||||||
 | 
					### [Engineer](#education)
 | 
				
			||||||
 | 
					### [{Programmer}](#programming)
 | 
				
			||||||
 | 
					### [System Admin ⚙](#sysadmin)
 | 
				
			||||||
 | 
					### [Project Manager](#projectmgr)
 | 
				
			||||||
 | 
					### [Polyvalent ⚒](#other)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					</article>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<article>
 | 
				
			||||||
 | 
					# What I love
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<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>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<article>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Education
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2015: [Engineer diploma](https://repertoire.iesf.fr/#profile/7ad768dca365416530f522697e78f623)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="center">
 | 
				
			||||||
 | 
					__✓ Engineer Degree__<br/>
 | 
				
			||||||
 | 
					at ISEN Brest, France
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2013-2015: ISEN Brest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[Robotics Major](https://isen-brest.fr/formation-ingenieur/domaines-professionnels/robotique-mobile/)<br/>
 | 
				
			||||||
 | 
					_I wanted a major that was combining of electronics and computer sciences. The robotics major was the one that most meets my requirements_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2011-2013: ISEN Brest
 | 
				
			||||||
 | 
					[Computer science and Network cycle](https://isen-brest.fr/formation-ingenieur/ingenieur-informatique/) - 2nd & 3rd year<br/>
 | 
				
			||||||
 | 
					_The standard program didn't suit me because there were not enough computer sciences courses. When I was offered to switch to the Computer science and Network cycle, I immediately accepted._
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2010-2011: ISEN Brest
 | 
				
			||||||
 | 
					[Intensive programs on Mathematics and Physics](https://isen-brest.fr/formation-ingenieur/ingenieur-generaliste/) - 1st year<br/>
 | 
				
			||||||
 | 
					_Following my high school diploma, I wanted to attend an engineering school specialized in electronics and computer sciences._
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- [ISEN Brest website](https://isen-brest.fr/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<a class="gototop" href="#i-am-"></a>
 | 
				
			||||||
 | 
					</article>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<article>
 | 
				
			||||||
 | 
					<h1 id="programming">Programming</h1>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<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>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="canvas-container">
 | 
				
			||||||
 | 
					    <canvas id="linux" width="600px" height="300px"></canvas>
 | 
				
			||||||
 | 
					    <canvas id="network" width="600px" height="300px"></canvas>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<a class="gototop" href="#i-am-"></a>
 | 
				
			||||||
 | 
					</article>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<article>
 | 
				
			||||||
 | 
					<h1 id="projectmgr">Project Management</h1>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="canvas-container">
 | 
				
			||||||
 | 
					    <canvas id="tools" width="600px" height="300px"></canvas>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					<a class="gototop" href="#i-am-"></a>
 | 
				
			||||||
 | 
					</article>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<article>
 | 
				
			||||||
 | 
					# Other
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Softwares
 | 
				
			||||||
 | 
					- LibreOffice, Microsoft office
 | 
				
			||||||
 | 
					- Drawing: Photoshop, Gimp, Krita, Inkscape
 | 
				
			||||||
 | 
					- 3D Modeling: Solidworks, Blender
 | 
				
			||||||
 | 
					- Electronics modeling: ISIS Proteus
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Languages
 | 
				
			||||||
 | 
					- French: Native
 | 
				
			||||||
 | 
					- English: First Certificate of English diploma, fluent
 | 
				
			||||||
 | 
					- Spanish: Medium level
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Manual Work
 | 
				
			||||||
 | 
					- DIY & Models
 | 
				
			||||||
 | 
					- PC assembling & modding (see my [latest PC mod](https://forum.hardware.fr/hfr/OverclockingCoolingModding/Modding/workblog-shinobi-white-sujet_278883_1.htm))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<a class="gototop" href="#i-am-"></a>
 | 
				
			||||||
 | 
					</article>
 | 
				
			||||||
							
								
								
									
										41
									
								
								content/aboutme/posts/education.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								content/aboutme/posts/education.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,41 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Education'
 | 
				
			||||||
 | 
					weight = 10
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2015: [Engineer diploma](https://repertoire.iesf.fr/#profile/7ad768dca365416530f522697e78f623)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div class="center">
 | 
				
			||||||
 | 
					<b>✓ Engineer Degree</b><br/>
 | 
				
			||||||
 | 
					at ISEN Brest, France
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2013-2015: ISEN Brest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[Robotics Major](https://isen-brest.fr/formation-ingenieur/domaines-professionnels/robotique-mobile/)<br/>
 | 
				
			||||||
 | 
					_I wanted a major that was combining of electronics and computer sciences. The robotics major was the one that most meets my requirements_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2011-2013: ISEN Brest
 | 
				
			||||||
 | 
					[Computer science and Network cycle](https://isen-brest.fr/formation-ingenieur/ingenieur-informatique/) - 2nd & 3rd year<br/>
 | 
				
			||||||
 | 
					_The standard program didn't suit me because there were not enough computer sciences courses. When I was offered to switch to the Computer science and Network cycle, I immediately accepted._
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2010-2011: ISEN Brest
 | 
				
			||||||
 | 
					[Intensive programs on Mathematics and Physics](https://isen-brest.fr/formation-ingenieur/ingenieur-generaliste/) - 1st year<br/>
 | 
				
			||||||
 | 
					_Following my high school diploma, I wanted to attend an engineering school specialized in electronics and computer sciences._
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<!--more-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2008: Learnt NWScript, joined _La Colère d'Aurile_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In 2008 I started learning NWScript, a C-like language for programming events in the game _Neverwinter Nights 2_. Shortly after, I joined a community of developpers that was working on _La Colère d'Aurile_, a custom _Neverwinter Nights 2_ server. I am still working on the same server, now as the main server admin and developer.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### 2007: First lines of code
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I've written a handful of game on my Casio calculator at the age of 15.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I was already hacking computers and modding games before, but never actually wrote a complete program from scratch before.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- [ISEN Brest website](https://isen-brest.fr/)
 | 
				
			||||||
							
								
								
									
										42
									
								
								content/aboutme/posts/environment.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								content/aboutme/posts/environment.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,42 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Environment'
 | 
				
			||||||
 | 
					weight = 30
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Desktop Linux software
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					All my machine run on Linux, and generally use these softwares:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Archlinux
 | 
				
			||||||
 | 
					- Sway window manager (i3 for wayland) with fully custom config
 | 
				
			||||||
 | 
					- Systemd
 | 
				
			||||||
 | 
					- Sublime Text and Zed editors
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Main machine
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This machine is a bit overkill as it has been designed to host two desktops in one machine (one native, and one in a VM)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- CPU: AMD 7900X, RAM: 32GB, GPU: RX 7800XT
 | 
				
			||||||
 | 
					- Custom watercooling and Arduino-based fan speed controller
 | 
				
			||||||
 | 
					- Qemu virtualisation for windows VMs, with a dedicated GPU (Geforce GTX 1070) using PCI passthrough.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## This server (VPS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Used for hosting some services and experiments
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Archlinux
 | 
				
			||||||
 | 
					- Nextcloud, Collabora, Matrix server, Forgejo, and other services
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## LCDA server (dedicated)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					More robust / stable server for hosting my Neverwinter Nights 2 server
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Ubuntu LTS
 | 
				
			||||||
 | 
					- Ansible for setup / configuration
 | 
				
			||||||
 | 
					- Qemu / KVM with virtio networking
 | 
				
			||||||
 | 
					- Collectd, Graphite, influxdb and grafana for monitoring
 | 
				
			||||||
 | 
					- A lot of bash script for common task automation
 | 
				
			||||||
 | 
					- Off-site daily backups
 | 
				
			||||||
							
								
								
									
										27
									
								
								content/aboutme/posts/hobbies.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								content/aboutme/posts/hobbies.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,27 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Hobbies'
 | 
				
			||||||
 | 
					weight = 40
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## DIY
 | 
				
			||||||
 | 
					- Ceramics / pottery, mainly on the wheel
 | 
				
			||||||
 | 
					- Small constructions, furnitures, contraptions, ...
 | 
				
			||||||
 | 
					- Repairing stuff
 | 
				
			||||||
 | 
					- PC modding <a href="https://forum.hardware.fr/hfr/OverclockingCoolingModding/Modding/mod-haf-922-sujet_272997_1.htm">Mod HAF922</a>, <a href="https://forum.hardware.fr/hfr/OverclockingCoolingModding/Modding/workblog-shinobi-white-sujet_278883_1.htm">Mod Shinobi XL</a>
 | 
				
			||||||
 | 
					- Models
 | 
				
			||||||
 | 
					- Electronics
 | 
				
			||||||
 | 
					- Small hacks
 | 
				
			||||||
 | 
					- ...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Music
 | 
				
			||||||
 | 
					- Celtic/lever harp player since 1999
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Cooking
 | 
				
			||||||
 | 
					I love cooking world food: Mexican, Antillean, Thai, Japanese (a lot), Italian, ... actually, I'm not that much into _French cuisine_ :)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I'm into fermentation and brewing. I often make my own ginger beer (non alcoholic), fruit kefir, and occasionally some craft beer. I even make several fermented sauces like sriracha and kimchi.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Game design
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I'm very interested in game design.
 | 
				
			||||||
 | 
					I had several occasions to practice game / level design with my many Neverwinter Nights 2 related projects, and a handful of game jams :)
 | 
				
			||||||
							
								
								
									
										32
									
								
								content/aboutme/posts/programming.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								content/aboutme/posts/programming.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,32 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Programming'
 | 
				
			||||||
 | 
					weight = 20
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Main languages
 | 
				
			||||||
 | 
					- **Rust** - Modern language with safety
 | 
				
			||||||
 | 
					- **D** - Modern language inspired by C++ and Java, that is garbage collected and has excellent metaprogramming capabilities
 | 
				
			||||||
 | 
					- **C++** - C++23 takes a lot of pain out of this old and bloated language
 | 
				
			||||||
 | 
					- **C** - Mainly for low level / embedded code, and for building of connecting interfaces between different libraries and programming languages
 | 
				
			||||||
 | 
					- **Python** - When performance and safety/stability is not critical
 | 
				
			||||||
 | 
					- **NWScript** - A C-like language that is not really relevant outside of Neverwinter Nights, but it's the first "serious" language that I learnt and used a lot
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Other languages
 | 
				
			||||||
 | 
					- **Bash**, **Zsh** - _Obviously_, for Linux admin and automation
 | 
				
			||||||
 | 
					- **HTML**, **CSS**, **JS** - For website frontends
 | 
				
			||||||
 | 
					- **MySQL**, **PostgreSQL**, **SQLite** - There are a lot of alternative databases out there, but I always end up using one of these three
 | 
				
			||||||
 | 
					- **Assembly** - clearly not my area of expertise, but it's always useful for understanding compiler behaviour and executable reverse engineering
 | 
				
			||||||
 | 
					- **Go** - The language is a bit too basic for my taste, but is very easy to read and is great for web backends
 | 
				
			||||||
 | 
					- **C#**, **Java**, **Lua**, **PHP** - Languages that I learnt but haven't touched in a while
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Dev tooling
 | 
				
			||||||
 | 
					- **Git** - Learnt git in 2011. Now it's so ubiquitous it's barely worth mentioning
 | 
				
			||||||
 | 
					- **GitlabCI**, **Github Actions** - for automated testing, code quality & coverage reports, and automated releases/deploys
 | 
				
			||||||
 | 
					- **Codecov** - for a nice display of code coverage
 | 
				
			||||||
 | 
					- **Docker** - it's quite essential now, for custom CI and build environments or service management
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Other
 | 
				
			||||||
 | 
					- **Ansible** - For restoring a complex server in case of disk failure
 | 
				
			||||||
 | 
					- **Hugo** - This site is served with Hugo and a custom template
 | 
				
			||||||
 | 
					- **Qemu/KVM/Libvirt** - For server and desktop VMs, with as much virtio as possible (disk, network, video buffer, ...)
 | 
				
			||||||
 | 
					- **Yocto** - Built a custom linux disk image in 2015
 | 
				
			||||||
							
								
								
									
										18
									
								
								content/aboutme/posts/sports.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								content/aboutme/posts/sports.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,18 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Sports'
 | 
				
			||||||
 | 
					weight = 40
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Rock climbing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Club: [_Les Grimpeurs de l'Odet_](https://www.lesgdo.org)
 | 
				
			||||||
 | 
					- Since 2002
 | 
				
			||||||
 | 
					- 8 years of competition
 | 
				
			||||||
 | 
					- Instructing courses
 | 
				
			||||||
 | 
					- Initiator diploma
 | 
				
			||||||
 | 
					- Member of the board of directors between 2012 and 2014
 | 
				
			||||||
 | 
					- Former webmaster
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## [Slackline](https://www.youtube.com/watch?v=HDTwQGEeGZc)
 | 
				
			||||||
 | 
					- Sailing
 | 
				
			||||||
 | 
					- Underwater fishing and freediving
 | 
				
			||||||
							
								
								
									
										4
									
								
								content/blog/_index.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								content/blog/_index.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,4 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Blog'
 | 
				
			||||||
 | 
					weight = 100
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
							
								
								
									
										4
									
								
								content/projects/_index.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								content/projects/_index.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,4 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					title = 'Projects'
 | 
				
			||||||
 | 
					weight = 10
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
							
								
								
									
										17
									
								
								content/projects/posts/3denginetoy.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								content/projects/posts/3denginetoy.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,17 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2011-12-01'
 | 
				
			||||||
 | 
					title = 'Toy 3D engine'
 | 
				
			||||||
 | 
					tags = ["C++", "3d"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In 2012, after working on MatrixRun with Irrlicht, I decided to study and write a sample 3D engine using OpenGL
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It only handles basic forms, like cubes and height maps (defined in text files), and chain renders the scene, respecting relative positions.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/3dengine-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Source code study of Irrlicht
 | 
				
			||||||
 | 
					- OpenGL 2 API
 | 
				
			||||||
 | 
					- C++ Dev.
 | 
				
			||||||
							
								
								
									
										21
									
								
								content/projects/posts/3dprint-old.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								content/projects/posts/3dprint-old.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,21 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2012-09-01'
 | 
				
			||||||
 | 
					title = '3D Printer: RepRapPro Mendel'
 | 
				
			||||||
 | 
					tags = ["3dprint", "DIY"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In 2012, I assembled a 3D printer kit, with the Electronics Club of ISEN Brest. This was a RepRapPro Mendel monocolour.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Presentation video (fr):
 | 
				
			||||||
 | 
					<div class="cinema center">
 | 
				
			||||||
 | 
						<video controls>
 | 
				
			||||||
 | 
							<source src="/media/3dprinter.mp4" type="video/mp4"/>
 | 
				
			||||||
 | 
							<source src="/media/3dprinter.webm" type="video/webm"/>
 | 
				
			||||||
 | 
							<a href="/media/3dprinter.mp4">Download video</a>
 | 
				
			||||||
 | 
						</video>
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- DIY
 | 
				
			||||||
 | 
					- Patience, rigor
 | 
				
			||||||
							
								
								
									
										18
									
								
								content/projects/posts/akadoc.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								content/projects/posts/akadoc.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,18 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2015-04-22'
 | 
				
			||||||
 | 
					title = 'Akadoc'
 | 
				
			||||||
 | 
					tags = ["C#", "unity", "gamedev"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					A game project started with friends, that was far too ambitious and got abandoned.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/akadoc-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Repository: https://git.tcharles.fr/akadoc/akadoc
 | 
				
			||||||
 | 
					- Game design documents: https://git.tcharles.fr/akadoc/specs/src/branch/master/archives (French)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Game design
 | 
				
			||||||
 | 
					- Unity engine
 | 
				
			||||||
 | 
					- C# scripting
 | 
				
			||||||
							
								
								
									
										23
									
								
								content/projects/posts/aoc2020.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								content/projects/posts/aoc2020.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2020-12-30'
 | 
				
			||||||
 | 
					title = 'Advent of Code 2020'
 | 
				
			||||||
 | 
					tags = ["rust", "aoc", "algorithm"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In December 2020 I decided to participate in the Advent of Code 2020, a yearly event where every day of December, you get an __algorithmic puzzle__ that you can solve using any language you want (the input data is randomly generated and you must provide the correct answer). I chose to solve the daily puzzles with __Rust__ code, since I am __very interested in this language__ and I haven't practised it very much.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					My goal was not to earn a maximum of points by solving the puzzles as fast as possible once they are released (they were released at 6AM an France), but rather to __find the most interesting and/or efficient ways to solve__ them.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I also joined the Discord server or my former engineering school to __help students__ that were participating in the event. This led to a lot of interesting discussions about code instrumentation and optimisation, algorithmic complexity, regular expressions, language features, ...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<!--more-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Rust programming
 | 
				
			||||||
 | 
					- Algorithms
 | 
				
			||||||
 | 
					- Problem solving
 | 
				
			||||||
 | 
					- Teaching
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- AoC website: https://adventofcode.com/2020/
 | 
				
			||||||
 | 
					- My solutions: https://gitlab.com/CromFr/advent-of-code-2020
 | 
				
			||||||
							
								
								
									
										21
									
								
								content/projects/posts/arcadecabinet.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								content/projects/posts/arcadecabinet.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,21 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2013-02-01'
 | 
				
			||||||
 | 
					title = 'Arcade cabinet'
 | 
				
			||||||
 | 
					tags = ["DIY", "hardware", "linux", "dlang"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/bornearcade-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In 2014, I worked on an arcade gaming console with the Electronics Club of ISEN Brest, that is available to students in school.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I worked on the 3D Design, structure cutting/assembling, Archlinux configuration and development of the game selector.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- DIY
 | 
				
			||||||
 | 
					- Solidity-constrained design
 | 
				
			||||||
 | 
					- ArchLinux configuration
 | 
				
			||||||
 | 
					- Development of the game selector in D
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Game selection software (OpenAGS): https://github.com/Club-Elec/OpenAGS
 | 
				
			||||||
							
								
								
									
										22
									
								
								content/projects/posts/burgerquizz.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								content/projects/posts/burgerquizz.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2012-05-01'
 | 
				
			||||||
 | 
					title = 'Burger Quizz game'
 | 
				
			||||||
 | 
					tags = ["java", "web", "sql", "school project"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/burgerquizz-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In 2012, I realized a web-site with another student, in order to play BurgerQuizz, a game from a French TV Show.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This project was realized after the courses on Apache/PHP/SQL in the second year at ISEN Brest.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Development of a website (HTML5/CSS3, Javascript, PHP, MySQL)
 | 
				
			||||||
 | 
					- Development of a user interface to edit the database in Java
 | 
				
			||||||
 | 
					- 30-day project with a deadline
 | 
				
			||||||
 | 
					- Version control with SVN
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- [Demo (French)](/redirect-burgerquizz)
 | 
				
			||||||
							
								
								
									
										43
									
								
								content/projects/posts/code4blind.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								content/projects/posts/code4blind.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,43 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2019-09-13'
 | 
				
			||||||
 | 
					title = 'Hackathon Code4Blind'
 | 
				
			||||||
 | 
					tags = ["hackathon", "android", "java"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Code4Blind was a **hackathon** organized by _[Les désordinateurs communicants](https://lesdesordinateurs.org)_ for working on solutions to **help visually impaired people to practice rock climbing**.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The **topics** were:
 | 
				
			||||||
 | 
					- Image processing for detecting and classifying holds
 | 
				
			||||||
 | 
					- Communicate the path and holds layout on the floor before climbing
 | 
				
			||||||
 | 
					- Recording the movements executed by a climber in order to be able to give instructions to the next climber.
 | 
				
			||||||
 | 
					- Communicate the holds around the climber while climbing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I worked on the last topic, and we decided to **experiment with binaural (positional) audio** to signal available holds around the climber.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Hold direction is communicated with binaural audio position
 | 
				
			||||||
 | 
					- Hold distance is communicated by volume
 | 
				
			||||||
 | 
					- Sounds type (bell, drum, ...) indicate the shape of the hold
 | 
				
			||||||
 | 
					- Multiple holds can be differentiated with sound pitch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In order to start working on a prototype, we assumed we were already provided with the head position of the climber in real time, and the holds position in the path.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<!--more-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Results
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The results were not very promising. Current **binaural audio libraries gives very inaccurate results**, especially for locating up vs down and front vs behind directions. This could be either caused by:
 | 
				
			||||||
 | 
					- The **missing head-related transfer function** (HRTF), which is different for every person and difficult to obtain without very specific equipment.
 | 
				
			||||||
 | 
					- **Inaccurate software audio processing**. Even with the best conditions, libraries never yields results that are as good as a real-world recording.
 | 
				
			||||||
 | 
					- **Lack of experience or ear training** with software-based binaural audio.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Nevertheless, the hackathon was very exciting and I really appreciated the experience, as I am both a software developer and an experienced rock climber.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Android dev.
 | 
				
			||||||
 | 
					- Binaural / positional audio
 | 
				
			||||||
 | 
					- Brainstorming and feedback gathering with users
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- [Hackathon website (french)](https://lesdesordinateurs.org/index.php/code4climb/)
 | 
				
			||||||
 | 
					- [PoC source code](https://framagit.org/lesdesordinateurs/audioxyz)
 | 
				
			||||||
							
								
								
									
										15
									
								
								content/projects/posts/course-git.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								content/projects/posts/course-git.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2013-04-01'
 | 
				
			||||||
 | 
					title = 'Courses on Git'
 | 
				
			||||||
 | 
					tags = ["course", "git"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/gitcourse-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					In 2013, I gave 3 courses of 2 hours on Git, a version control system (like Subversion, Mercurial, ...) at ISEN Brest, for voluntary students and teachers.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This course aims teaching the use of Git in collaborative projects, from the basis (add, commit, push, pull, ...) to more complex things (branch, merge, conflicts, stash, ...).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More:
 | 
				
			||||||
 | 
					- [Material (fr)](https://tcharles.fr/coursgit/)
 | 
				
			||||||
							
								
								
									
										75
									
								
								content/projects/posts/dlang.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								content/projects/posts/dlang.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,75 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2015-04-01'
 | 
				
			||||||
 | 
					title = 'D Language'
 | 
				
			||||||
 | 
					tags = ["dlang", "linux", "web", "contributions"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The [D language](https://dlang.org) is a recent language very similar to C++ in term of features, but with a cleaned syntax and better compile-time features.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I like the D language because it makes possible to write nice and robust applications within a very short time.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<!--more-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Here are some small projects I have done using D:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Served
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/served-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Served is a __lightweight file-sharing web service__ (a bit like _Google Drive_) written using the web server library [vibe.d](https://vibed.org).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It is designed to be __quickly deployed__ as a __web file server__ that can also be used to __upload files__ to a directory. Its default configuration serves the folder given by command line and uses UNIX users/passwords (via __PAM Authentification__) to upload/view files respecting file permissions.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					By default, the file named `index.md` gets rendered atop of the file list.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- Source code: https://github.com/CromFr/Served
 | 
				
			||||||
 | 
					- Design:
 | 
				
			||||||
 | 
						+  Bootstrap
 | 
				
			||||||
 | 
						+  JQuery
 | 
				
			||||||
 | 
						+  Markdown rendering with Showdown
 | 
				
			||||||
 | 
						+  Interfacing D lang. with C library (PAM)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## NWN2 Log web access
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/nwnlog-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The goal was to provide a common __web interface__ to __browse and search log__ entries written by the Neverwinter Nights 2 server _La Colère d'Aurile_.
 | 
				
			||||||
 | 
					These entries are written in different files/databases, use different syntaxes and timestamps relative to different time zones.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The log viewer has been written to be as easy as possible to extend and maintain:
 | 
				
			||||||
 | 
					If you want to add a log page, you just have to write a class. The menus, interface, search parameters, the instantiation are __auto-generated at compile time__.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Source code: https://github.com/CromFr/NWNLogViewer
 | 
				
			||||||
 | 
					- Design
 | 
				
			||||||
 | 
						+ REST API generating Json data
 | 
				
			||||||
 | 
						+ Search & data-binding using AngularJS
 | 
				
			||||||
 | 
						+ Much code generation using D meta-programming features
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## NWN2 GUI viewer
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/nwnlog-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Neverwinter Nights 2 lacks of third applications. This one  __renders NWN2 GUI__ without launching the whole game, and updates itself on file change.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					It allows developers to write the XML GUI code with their favourite editor, while seeing the result in real time in another window, with extra debugging information that NWN2 doesn't provide.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Right now it has some quirks on text alignment and font handling, but the result is still close to the in-game rendering.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Source code: https://github.com/CromFr/NWNGuiViewer
 | 
				
			||||||
 | 
					- Design:
 | 
				
			||||||
 | 
						+ GTK 3 with GTKD wrapper for D lang.
 | 
				
			||||||
 | 
						+ Hand-made XML parser
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Phobos
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Phobos is the standard library of the D language.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I have fixed a couple of bugs in the library, and I am looking to fix more of them in the future :).
 | 
				
			||||||
							
								
								
									
										10
									
								
								content/projects/posts/draft-flipperzero.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								content/projects/posts/draft-flipperzero.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,10 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2022-04-01'
 | 
				
			||||||
 | 
					title = 'Flipper zero'
 | 
				
			||||||
 | 
					tags = ["C", "hacking", "reverse-eng"]
 | 
				
			||||||
 | 
					draft = true
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					1 contribution to official
 | 
				
			||||||
 | 
					worth?
 | 
				
			||||||
							
								
								
									
										15
									
								
								content/projects/posts/draft-nwbash.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								content/projects/posts/draft-nwbash.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2021-02-01'
 | 
				
			||||||
 | 
					title = 'Tetrogue'
 | 
				
			||||||
 | 
					tags = ["NWN2", "NWScript", "bash", "reverse-eng", "hacking"]
 | 
				
			||||||
 | 
					draft = true
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					February 2021
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Understand bash command-line parsing
 | 
				
			||||||
 | 
					- Reimplementing bash in a language that's really not designed for it (no arrays, no pointers, no char type, ...)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Gitlab repository: https://gitlab.com/CromFr/nwbash
 | 
				
			||||||
							
								
								
									
										15
									
								
								content/projects/posts/draft-nwn-lib-rs.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								content/projects/posts/draft-nwn-lib-rs.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2022-06-01'
 | 
				
			||||||
 | 
					title = 'nwn-lib-rs'
 | 
				
			||||||
 | 
					tags = ["NWN2", "rust"]
 | 
				
			||||||
 | 
					draft = true
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					June 2022
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Rust programming
 | 
				
			||||||
 | 
					- Secure binary file parsing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Gitlab repository: https://gitlab.com/CromFr/nwn-lib-rs
 | 
				
			||||||
							
								
								
									
										19
									
								
								content/projects/posts/draft-nwnx4.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								content/projects/posts/draft-nwnx4.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,19 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2021-03-01'
 | 
				
			||||||
 | 
					title = 'NWNX4 resurrected'
 | 
				
			||||||
 | 
					tags = ["NWN2", "C++", "reverse-eng", "hacking", "contributions"]
 | 
				
			||||||
 | 
					draft = true
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					March 2021
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- C++ programming, with Win32 ABI
 | 
				
			||||||
 | 
					- DLL Injection and Reverse engineering
 | 
				
			||||||
 | 
					- Upgrading a legacy code-base and tools (Visual Studio 2005 => MSVC 2019 + Meson)
 | 
				
			||||||
 | 
					- Automated testing and release management with Github Actions
 | 
				
			||||||
 | 
					- ABI design for writing independent plugins
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- NWNX4 main repository: https://github.com/nwn2dev/nwnx4
 | 
				
			||||||
 | 
					- NWNX4 related projects: https://github.com/orgs/nwn2dev/repositories
 | 
				
			||||||
							
								
								
									
										18
									
								
								content/projects/posts/draft-rerollsoldier.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								content/projects/posts/draft-rerollsoldier.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,18 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2022-07-15'
 | 
				
			||||||
 | 
					title = 'Reroll Soldier !'
 | 
				
			||||||
 | 
					tags = ["gamedev", "gamejam", "godot"]
 | 
				
			||||||
 | 
					draft = true
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					July 15th 2022
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Game design
 | 
				
			||||||
 | 
					- Godot 3 (python-ish scripting)
 | 
				
			||||||
 | 
					- Sound design (Audacity)
 | 
				
			||||||
 | 
					- Level design
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Game page (can be played in the browser): https://cromfr.itch.io/reroll-soldier
 | 
				
			||||||
 | 
					- Source code: https://github.com/semi-confituriers/RerollSoldier
 | 
				
			||||||
							
								
								
									
										19
									
								
								content/projects/posts/draft-tetrogue.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								content/projects/posts/draft-tetrogue.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,19 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2021-07-11'
 | 
				
			||||||
 | 
					title = 'Tetrogue'
 | 
				
			||||||
 | 
					tags = ["gamedev", "gamejam", "godot"]
 | 
				
			||||||
 | 
					draft = true
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					June 11th 2021
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- Game design
 | 
				
			||||||
 | 
					- Godot 3 (python-ish scripting)
 | 
				
			||||||
 | 
					- 2D sprite creation (Krita)
 | 
				
			||||||
 | 
					- Sound design (Audacity)
 | 
				
			||||||
 | 
					- Level design
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Game page (can be played in the browser): https://cromfr.itch.io/reroll-soldier
 | 
				
			||||||
 | 
					- Source code: https://github.com/semi-confituriers/RerollSoldier
 | 
				
			||||||
							
								
								
									
										33
									
								
								content/projects/posts/fan-controller.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								content/projects/posts/fan-controller.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,33 @@
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					date = '2018-01-11'
 | 
				
			||||||
 | 
					title = 'PC fan controller'
 | 
				
			||||||
 | 
					tags = ["arduino", "C++", "hardware"]
 | 
				
			||||||
 | 
					+++
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{< cinema path="/images/posts/fan-controller-*.*" >}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I came up with this because my PC has a home-made watercooling system and its motherboard does not have any external sensor pins for the water temperature sensor.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<!--more-->
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					So I had 3 choices for controlling the fan speeds:
 | 
				
			||||||
 | 
					1. Always keep fans at around 70% so the water never gets too hot. Effective but too noisy for my taste...
 | 
				
			||||||
 | 
					2. Control fan speed using the SSD temperature sensor (the SSD does not heat up very much, and is placed next to a watercooling radiator, so we can deduce very approximately the water temperature with it). It would require to write a custom multi-platform tool that would somehow find a way to control fan speed (and would require some reverse engineering on the motherboard).
 | 
				
			||||||
 | 
					3. Find or build an external fan controller, which uses the water temperature sensor.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					I went for solution 3. and designed a small board around an __Arduino nano__, that can take __multiple temperature inputs__ from external sensors (Water and Air), and __adjust fan speed__ accordingly using a simple __temperature/speed curve__. I also put a small __OLED screen__ (_SSD1306_) to display all this information, a button to force high / low / auto fan speeds, and an __alarm__ if the temperature reaches critical values (or the sensor is disconnected / short circuited).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Since then I can barely hear my PC, even during intensive tasks :)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Skills
 | 
				
			||||||
 | 
					- PCB design
 | 
				
			||||||
 | 
					- Basic electronics
 | 
				
			||||||
 | 
					- C++ programming on Arduino
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### More
 | 
				
			||||||
 | 
					- Source code and PCB design: https://github.com/CromFr/fan-controller
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<div style="display: none">
 | 
				
			||||||
 | 
					DIY soldering embedded systems
 | 
				
			||||||
 | 
					</div>
 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show more
		Loading…
	
	Add table
		
		Reference in a new issue