Compare commits
68 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 5e6d3b5051 | |||
| 60adff03cb | |||
| aafbb7e2e7 | |||
| 9278393b41 | |||
| 93a462da3c | |||
| a19583c8d4 | |||
| 2e61cf8874 | |||
| f4cdfe28a3 | |||
| 7a2ac0f378 | |||
| 2bfaacd195 | |||
| f10f0eb102 | |||
| 02a6703f1e | |||
| 108ed19d56 | |||
| 89ec0ffc21 | |||
| 757bff9ac1 | |||
| f6e3bb5cc5 | |||
| 71e544f24a | |||
| 3e9580b3b1 | |||
| 4a6999ee98 | |||
| 71422ddecf | |||
| 12a02a6d18 | |||
| ee21d9c937 | |||
| 557c7da71d | |||
| e64b1e05c5 | |||
| fa9398db26 | |||
| 773428489e | |||
| 199e94a1dc | |||
| 5d3c64070e | |||
| df5e8858f8 | |||
| caedd2fa11 | |||
| 3d63413b3b | |||
| 7beefc4376 | |||
| 2a92be3042 | |||
| 9d47c08686 | |||
| 1ccbbddb75 | |||
| 308388a3ad | |||
| 588e718a52 | |||
| 22ccc41391 | |||
| 0e53fee5a8 | |||
| 219765697e | |||
| a403e02ce8 | |||
| 7d62fcd858 | |||
| d4eb5dce28 | |||
| 5d5de8adb9 | |||
| a3f7a2a748 | |||
| 6de1f2d04b | |||
| 43cc83e71a | |||
| 13a06963a3 | |||
| 23b6ca69c9 | |||
| e7f9cd88e2 | |||
| 801e6807fb | |||
| e86605b542 | |||
| ad6b97ad5a | |||
| c9adc1e7fb | |||
| a70ac393d2 | |||
| 2ff220977c | |||
| dd096a5d03 | |||
| b68af15517 | |||
| 105b8c5de3 | |||
| cac3b60740 | |||
| 3f56916935 | |||
| 5c6dce989c | |||
| 3d98dc99ed | |||
| 8efa8445a4 | |||
| 02dee0a844 | |||
| 6e2c8b4191 | |||
| 187eacac0a | |||
| 8d6265397c |
12
README.md
12
README.md
@@ -0,0 +1,12 @@
|
|||||||
|
# Site internet de Hatmos
|
||||||
|
|
||||||
|
## Pages ajoutees
|
||||||
|
- [x] IMEMA
|
||||||
|
- [ ] Pongzilla
|
||||||
|
- [x] Alize
|
||||||
|
- [x] Porsche 944
|
||||||
|
- [x] Gitea
|
||||||
|
- [x] Les Copains
|
||||||
|
- [ ] Auto-water
|
||||||
|
- [ ] Auto-Slicer
|
||||||
|
- [ ] Clap
|
||||||
|
|||||||
4
content/404.md
Normal file
4
content/404.md
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
+++
|
||||||
|
title = "Page non trouve"
|
||||||
|
template = "404.html"
|
||||||
|
+++
|
||||||
45
content/CV.md
Normal file
45
content/CV.md
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
+++
|
||||||
|
title = "CV Thomas LETELLIER"
|
||||||
|
description = "Curriculum Vitae de Thomas LETELLIER"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["CV", "Thomas LETELLIER", "letellier", "Hatmos", "hatmos"]
|
||||||
|
+++
|
||||||
|
|
||||||
|
# Thomas LETELLIER
|
||||||
|
|
||||||
|
- Tel : 07 80 33 57 13
|
||||||
|
- Mail : thomas.letellier2812@gmail.com
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Experiences Professionnelles
|
||||||
|
|
||||||
|
>### Technicien en Automatisme
|
||||||
|
>#### Direction Maitre de l'Energie Ville de Besancon
|
||||||
|
>- Developpement et mise a jour de logiciel de journalisation Modbus
|
||||||
|
>- Conception et cablage d'armoires electriques
|
||||||
|
>- Programmation d'automates Siemens et Soffrel
|
||||||
|
|
||||||
|
>### Alternant Technicien en Automatisme
|
||||||
|
>#### Eiffage Energie Systemes Clemessy
|
||||||
|
>- Conception de vues de supervision pour une Unite de Valorisation Energetique
|
||||||
|
>- Installation et interfacage d'une Interface Homme Machine pour un reseau de froid urbain
|
||||||
|
>- Conception et presentation d'une supervision aupres d'un client
|
||||||
|
|
||||||
|
## Formation
|
||||||
|
|
||||||
|
>### DUT Genie Electrique et informatique industrielle
|
||||||
|
>#### Institut Universitaire de Technologie de Rouen
|
||||||
|
|
||||||
|
>### Baccalaureat General
|
||||||
|
>#### Lycee Polyvalent Raymond Queneau
|
||||||
|
|
||||||
|
## Competences
|
||||||
|
|
||||||
|
>- Programmation informatique : Rust, C, Python
|
||||||
|
>- Programmation Automate : Structure, LADDER, Grafcet
|
||||||
|
>- Conception et assemblage de cartes electroniques
|
||||||
|
>- Conception de modeles 3D sur Solidworks 3DExperience
|
||||||
|
>- Pack Office
|
||||||
|
>- Systemes Linux
|
||||||
18
content/_index.md
Normal file
18
content/_index.md
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
+++
|
||||||
|
title = "Hatmos"
|
||||||
|
description = "Site portefolio de mes objectifs et accomplissements"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["Hatmos", "hatmos", "portefolio"]
|
||||||
|
aside = "aside-index.md"
|
||||||
|
+++
|
||||||
|
|
||||||
|
# Accomplissements
|
||||||
|
- [IMEMA](@/accomplissements/IMEMA.md)
|
||||||
|
- Pongzilla
|
||||||
|
- [Serveur Gitea](@/accomplissements/server-gitea.md)
|
||||||
|
- Serveur d'impression CUPS
|
||||||
|
|
||||||
|
# Objectifs
|
||||||
|
- [Alize](@/objectifs/alize.md)
|
||||||
|
- [Porsche 944](@/objectifs/porsche-944.md)
|
||||||
@@ -1,5 +1,9 @@
|
|||||||
+++
|
+++
|
||||||
title = "IMEMA"
|
title = "IMEMA"
|
||||||
|
description = "Interface Modbus pour l'Enregistrement des Mesures d'Automates"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["IMEMA", "Modbus", "PLC", "Automate", "DB", "Hatmos", "hatmos"]
|
||||||
+++
|
+++
|
||||||
|
|
||||||
Interface Modbus pour l'Enregistrement des Mesures d'Automates
|
Interface Modbus pour l'Enregistrement des Mesures d'Automates
|
||||||
@@ -23,4 +27,4 @@ Apres une pause de 15 minutes, le processus relance un nouveau cycle de lecture
|
|||||||
|
|
||||||
Pour la partie Automate, j'ai mis en place un serveur modbus grace au bloc fourni par le constructeur et ai expose les registres voulu avec un DataBlock dedie.
|
Pour la partie Automate, j'ai mis en place un serveur modbus grace au bloc fourni par le constructeur et ai expose les registres voulu avec un DataBlock dedie.
|
||||||
|
|
||||||
Il reste des modifications a operer et des fonctionnalites a rajouter, mais le coeur du programme est la et repond a besoin de securite des donnees avec une duplication des format et des localites.
|
Il reste des modifications a operer et des fonctionnalites a rajouter, mais le coeur du programme est la et repond a besoin de securite des donnees avec une duplication des format et des localites.
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
+++
|
+++
|
||||||
title = "Liste des Accomplissements"
|
title = "Liste des Accomplissements"
|
||||||
|
description = "Liste "
|
||||||
sort_by = "title"
|
sort_by = "title"
|
||||||
template = "accomplissements.html"
|
template = "sections.html"
|
||||||
page_template = "page.html"
|
page_template = "page.html"
|
||||||
+++
|
+++
|
||||||
|
|||||||
27
content/accomplissements/server-gitea.md
Normal file
27
content/accomplissements/server-gitea.md
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
+++
|
||||||
|
title = "Serveur Gitea"
|
||||||
|
description = "Une page qui explique comment j'ai mis en place un clone auto-heberge de github dans mon salon."
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["gitea", "github", "homeserver"]
|
||||||
|
aside = "aside-server-gitea.md"
|
||||||
|
+++
|
||||||
|
|
||||||
|
# Les premices du projet
|
||||||
|
|
||||||
|
Dans mon voyage dans le monde de la programmation informatique, j'ai fini par eprouver la necessite de versionner les programmes que je developpe.
|
||||||
|
Pour repondre a cette necessite j'ai commence a utiliser git mais le besoin de travailler durant les trajets pour optimiser le temps de locomotion m'a pousse a chercher une solution de serveur pour stocker tous ces repo git.
|
||||||
|
Je ne voulais pas dependre de microsoft et leur grille tariffaire, j'ai donc porte mon choix sur [Gitea](https://about.gitea.com/).
|
||||||
|
|
||||||
|
# La mise en oeuvre
|
||||||
|
|
||||||
|
Pour mettre en place Gitea sur mon serveur personnel, j'ai tout simplement suivi la documentation fournie par l'editeur du logiciel et tout a fonctionne du premier coup.
|
||||||
|
J'ai egalement fais en sorte que mon serveur sois accessible en dehors de mon reseau local et sois accessible sans que j'ai a tapper l'ip de ma box internet.
|
||||||
|
J'ai donc tout naturellement fais de la redirection de port avec ma box et j'ai editer une zone DNS avec mon fournisseur de nom de domaine.
|
||||||
|
Pour eviter d'etre pollue par des inconnus qui s'amuseraient a creer des comptes et saturer le stockage de mon serveur j'ai retire la possibilite de creer des comptes.
|
||||||
|
Si jamais vous souhaitez creer un compte pour heberger vos propres repo git veuillez me contacter en precisant vos intentions.
|
||||||
|
|
||||||
|
# La version actuelle de l'installation
|
||||||
|
|
||||||
|
Il me reste encore a automatiser la publication des nouvelles versions de mon site apres un push sur le repo consacre, mais cela ne fais que tarder.
|
||||||
|
Finalement, si vous souhaitez voir ce que donne le serveur dans les faits, je vous invite a suivre [ce lien](https://git.hatmos.xyz/) pour acceder a la page d'acceuil, vous pourrez vous connecter si vous possedez un compte ou voir les repo visibles et voir mon compte via le bouton "Explore".
|
||||||
8
content/aside/aside-17-03-2026.md
Normal file
8
content/aside/aside-17-03-2026.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
+++
|
||||||
|
title = "A propos"
|
||||||
|
description = "Complement d'information sur la photo"
|
||||||
|
+++
|
||||||
|
# *L'instant*
|
||||||
|
Cette photo est issue de la course des 24h du Mans 2025, course qui a rendu victorieux Robert Kubica avec sa monoplace Ferrari.
|
||||||
|
C'est durant cet evenement que je me suis rendu compte que j'aime beaucoup les courses de categorie GT.
|
||||||
|
Cette photo est ma preferee de l'evenement car les couleurs, le cadrage et le dynamisme retranscris sont beau a voir.
|
||||||
14
content/aside/aside-20-03-2026.md
Normal file
14
content/aside/aside-20-03-2026.md
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
+++
|
||||||
|
title = "A propos de mon ricing"
|
||||||
|
description = "Plus d'informations sur mon parcours dans la personnalisation d'environnements de bureau linux"
|
||||||
|
+++
|
||||||
|
# *A propos :*
|
||||||
|
Il y a de ca quelques annees, j'ai decouvert le *ricing* d'environnement linux en me perdant un peu trop sur youtube.
|
||||||
|
A ce moment la, j'etais encore etudiant et mon ordinateur portable de l'epoque servait principalement a suivre mes cours. Je ne pouvais donc pas me permettre d'avoir un *systeme linux* a part entiere dessus car je n'etais pas encore suffisament competent ni meme suffisement agace par a la maniere dont Microsoft traite les utilisateurs de Windows.
|
||||||
|
J'avais bien essaye de mettre en place un *double boot*, afin de passer de l'un a l'autre sans trop de difficultes, mais malgre tout, mes competences en ricing et la difficultee que j'avais a *trouver des informations* sur les outils et methodes de ricing ont mis un terme a ma tentative maladroite de ricing, ca et aussi le fait que mon pc portable est decede a la suite d'un accident de chocolat chaud a la cafeteria.
|
||||||
|
Arrive a la fin de ma formation universitaire, je commencais a emettre de serieux doute sur la bonne fois de Microsoft vis a vis de son rapport aux utilisateurs.
|
||||||
|
J'ai donc procede a plusieurs tentatives de *migration sur linux*. Ce n'est que depuis octobre dernier que je suis pleinement et a 100% un utilisateurs de linux.
|
||||||
|
Et le ricing dans tout ca ? Le ricing, il est venu quand j'ai commence a faire des projets personnels, notamment ceux presentes sur ce site internet. Je voulais continuer de travailler sur mes projets quand j'etais en deplacement pour des vacances ou bien simplement pour aller *travailler a l'exterieur*. Vous-vous souvenez de l'ordinateur portable decede ? Et bien son remplacant n'est autre que mon *Microsoft Surface Laptop 3* actuel (un beau pied-de-nez a Microsoft sois-dit en passant) et dont vous avez les captures d'ecran.
|
||||||
|
Pour presenter un peu plus mon systeme, je suis parti sur de la *stabilite* et de la protection contre l'*obsolesence*. J'ai donc mis en place un systeme Debian, bien connu pour sa stabilite, avec un gestionnaire de fenetre et compositeur wayland Sway. J'aime beaucoup le principe de l'affichage en carreaux que l'on peux voir lors de ce genre de personnalisation et pour anticiper la transition lente mais sur des distributions linux vers wayland, j'ai opte pour cette solution.
|
||||||
|
A l'heure actuelle, j'ai surtout mis en place les *raccourcis* et la personnalisation de la *barre d'information waybar*, adaptee a wayland.
|
||||||
|
N'hesitez pas a aller voir le *repo Gitea* dedie pour mon ricing et a suivre l'evolution de temps a autre.
|
||||||
6
content/aside/aside-index.md
Normal file
6
content/aside/aside-index.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
+++
|
||||||
|
title = "photo red glass porsche"
|
||||||
|
description = "une photo d'une porsche 944 avec uniquement la couleur rouge et en effet verre raye"
|
||||||
|
+++
|
||||||
|
|
||||||
|
{{ image(src="/porsche-944-turbo-red-glass.jpg", alt="Une photo d'une porsche 944 avec uniquement la couleur rouge et un effet de verre raye", height="100%") }}
|
||||||
6
content/aside/aside-server-gitea.md
Normal file
6
content/aside/aside-server-gitea.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
+++
|
||||||
|
title = "tl;dr server-gitea"
|
||||||
|
description = "tl;dr server-gitea"
|
||||||
|
+++
|
||||||
|
# *TL;DR :*
|
||||||
|
L’auteur voulait versionner ses projets et travailler dessus même en déplacement. Pour éviter les services payants de Microsoft, il a installé **Gitea** sur son serveur personnel en suivant la documentation. Il a rendu le serveur accessible depuis Internet via redirection de port et DNS. Pour éviter les abus, la création de comptes est désactivée (il faut le contacter pour en obtenir un). Il prévoit encore d’automatiser la publication de son site après un push Git, et invite les gens à visiter le serveur pour voir les dépôts publics.
|
||||||
11
content/copains.md
Normal file
11
content/copains.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
+++
|
||||||
|
title = "Les copains"
|
||||||
|
description = "Page de redirection vers les sites respectifs de mes amis"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["amis", "site", "lien"]
|
||||||
|
+++
|
||||||
|
|
||||||
|
- [SpicyFire](https://spicy-empire.vercel.app/)
|
||||||
|
- [MasterAcnolo](http://masteracnolo.github.io/)
|
||||||
|
- [Paul Marchiset](https://paulmarchiset.me/)
|
||||||
@@ -1,10 +1,15 @@
|
|||||||
+++
|
+++
|
||||||
|
title = "CV Thomas LETELLIER"
|
||||||
|
description = "Curriculum Vitae de Thomas LETELLIER"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["CV", "Thomas LETELLIER", "letellier", "Hatmos", "hatmos"]
|
||||||
+++
|
+++
|
||||||
|
|
||||||
# Thomas LETELLIER
|
# Thomas LETELLIER
|
||||||
|
|
||||||
Tel : 07 80 33 57 13
|
- Tel : 07 80 33 57 13
|
||||||
Mail : thomas.letellier2812@gmail.com
|
- Mail : thomas.letellier2812@gmail.com
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
11
content/daily/16-03-2026.md
Normal file
11
content/daily/16-03-2026.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
+++
|
||||||
|
title = "16/03/2026"
|
||||||
|
description = "Apprentissage du Ukulele"
|
||||||
|
[extra]
|
||||||
|
keywords = ["Ukulele"]
|
||||||
|
+++
|
||||||
|
|
||||||
|
# 16/03/2026
|
||||||
|
## Ukulele
|
||||||
|
---
|
||||||
|
{{ audio(src="/audio/ukulele/16-03-2026.mp3")}}
|
||||||
12
content/daily/17-03-2026.md
Normal file
12
content/daily/17-03-2026.md
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
+++
|
||||||
|
title = "17/03/2026"
|
||||||
|
description = "Retour sur Le Mans 2025"
|
||||||
|
[extra]
|
||||||
|
keywords = ["Le Mans", "Aston Martin", "Mercedes"]
|
||||||
|
aside = "aside-17-03-2026.md"
|
||||||
|
+++
|
||||||
|
|
||||||
|
# 17/03/2026
|
||||||
|
## Retour sur Le Mans 2025
|
||||||
|
---
|
||||||
|
{{ image(src="/FCP_3579.JPG", alt="Une Aston Martin devant une Mercedes durant les 24h du Mans", width="100%")}}
|
||||||
10
content/daily/18-03-2026.md
Normal file
10
content/daily/18-03-2026.md
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
+++
|
||||||
|
title ="18/03/2026"
|
||||||
|
description = "Beatmaking"
|
||||||
|
[extra]
|
||||||
|
keywords = ["beatmaking"]
|
||||||
|
+++
|
||||||
|
# 18/03/2026
|
||||||
|
## Beatmaking
|
||||||
|
|
||||||
|
{{audio(src="/audio/beatmaking/beatmaker1.mp3")}}
|
||||||
12
content/daily/20-03-2026.md
Normal file
12
content/daily/20-03-2026.md
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
+++
|
||||||
|
title = "20/03/2026"
|
||||||
|
description = "Ricing Microsoft Surface Laptop 3 avec Sway et Debian"
|
||||||
|
[extra]
|
||||||
|
keywords = ["Ricing", "Surface Laptop 3", "Sway WM", "Debian"]
|
||||||
|
aside = "aside-20-03-2026.md"
|
||||||
|
+++
|
||||||
|
|
||||||
|
# 20/03/2026
|
||||||
|
## Personnalisation de mon ordinateur portable
|
||||||
|
---
|
||||||
|
{{ image(src="/rice-20-03-2026.png", alt="Une capture d'ecran d'un environnement de bureau personnalise Sway present sur un systeme linux Debian", width="100%")}}
|
||||||
6
content/daily/_index.md
Normal file
6
content/daily/_index.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
+++
|
||||||
|
title = "Daily"
|
||||||
|
description = "Ajout journalier d'entrees sur le site"
|
||||||
|
template = "sections.html"
|
||||||
|
page_template = "page.html"
|
||||||
|
+++
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
+++
|
+++
|
||||||
title = "Liste des Objectifs"
|
title = "Liste des Objectifs"
|
||||||
|
description = "Objectifs a atteindre de Hatmos"
|
||||||
sort_by = "title"
|
sort_by = "title"
|
||||||
template = "objectifs.html"
|
template = "sections.html"
|
||||||
page_template = "page.html"
|
page_template = "page.html"
|
||||||
+++
|
+++
|
||||||
|
|||||||
29
content/objectifs/alize.md
Normal file
29
content/objectifs/alize.md
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
+++
|
||||||
|
title = "Alize"
|
||||||
|
description = "Presentation de Concord le service de voice chat rapide et ephemere"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["voice chat", "voice room", "hatmos", "Hatmos", "League of Legends"]
|
||||||
|
+++
|
||||||
|
|
||||||
|
Alize Voice Chat est une application web qui a pour but de fournir un salon vocal sans friction, ephemere et freemium pour le plus grand nombre.
|
||||||
|
La raison qui justifie l'existance de ce service est l'absence de chat vocal pour les joueurs de partie classe solo sur League of Legends.
|
||||||
|
Le jeu est un jeu d'equipe a 5 cinq joueurs qui demande de la coordination et de la planification. Sans chat vocal, il n'est pas possible d'exploiter le potentiel des joueurs.
|
||||||
|
Voila les premices a l'origine de ce projet.
|
||||||
|
|
||||||
|
Cette Application web doit pouvoir repondre a certaines necessites:
|
||||||
|
- Une page d'acceuil pour diriger les inities vers les fonctionnalites qu'ils souhaitent
|
||||||
|
- Une page applicative qui fourni le service principal (en l'occurence ici, le salon vocal)
|
||||||
|
- Une page qui permet la modifications de preferences et parametres pour les membres inscrits mais egalement les membres payants
|
||||||
|
|
||||||
|
L'objectif pour la page applicative est de charger rapidement et donner acces a toutes les fonctionnalites sans rendre l'interface illisible.
|
||||||
|
Par exemple avec une liste optionnelle de choses a verifier par l'utilisateur dispose en colonne sur un bord de l'ecran.
|
||||||
|
Dans tous les cas, l'utilisateur doit pouvoir utiliser le service avec le moins de clics possibles.
|
||||||
|
|
||||||
|
Le nombre de clics doit augmenter avec l'implication de l'utilisateur dans l'application :
|
||||||
|
- Un nouvel invite ne doit faire que 3 clics maximum pour avoir acces au service fonctionnel
|
||||||
|
- Un invite membre doit faire plus de clics pour obtenir la configuration qu'il souhaite (par exemple via les preferences)
|
||||||
|
- Un membre payant peux creer un salon preconfigure depuis ses preferences
|
||||||
|
- Un membre gratuit doit configurer son salon a la main avant de diffuser son invitation
|
||||||
|
|
||||||
|
Ce sont des pistes de design cote client et ne correspondent en rien a des decision arretes pour le design de l'application.
|
||||||
@@ -1,5 +1,9 @@
|
|||||||
+++
|
+++
|
||||||
title = "Porsche 944"
|
title = "Porsche 944"
|
||||||
|
description = "Objectifs de Voiture de reve"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
keywords = ["porsche 944", "porsche", "dream car", "hatmos", "Hatmos"]
|
||||||
+++
|
+++
|
||||||
|
|
||||||
{{ image(src="/porsche-944-2-7.jpeg" ,alt="Porsche 944 2.7L 1989", width="1200px") }}
|
{{ image(src="/porsche-944-2-7.jpeg" ,alt="Porsche 944 2.7L 1989", width="100%") }}
|
||||||
|
|||||||
BIN
static/FCP_3579.JPG
Normal file
BIN
static/FCP_3579.JPG
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.9 MiB |
BIN
static/audio/beatmaking/beatmaker1.mp3
Normal file
BIN
static/audio/beatmaking/beatmaker1.mp3
Normal file
Binary file not shown.
BIN
static/audio/ukulele/16-03-2026.mp3
Normal file
BIN
static/audio/ukulele/16-03-2026.mp3
Normal file
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 395 KiB |
BIN
static/porsche-944-turbo-red-glass.jpg
Normal file
BIN
static/porsche-944-turbo-red-glass.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 231 KiB |
BIN
static/rice-20-03-2026.png
Normal file
BIN
static/rice-20-03-2026.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 311 KiB |
@@ -1,11 +1,80 @@
|
|||||||
.titre{
|
.titre{
|
||||||
font-family: "Courier New", monospace;
|
font-family: "Courier New", monospace;
|
||||||
|
margin-left: 1%;
|
||||||
}
|
}
|
||||||
|
|
||||||
blockquote{
|
blockquote{
|
||||||
background-color: lightgrey;
|
background-color: lightgrey;
|
||||||
}
|
}
|
||||||
|
|
||||||
footer{
|
.footer-text{
|
||||||
background-color: lightgrey;
|
background-color: lightgrey;
|
||||||
|
margin: 5px;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-list{
|
||||||
|
list-style-type: none;
|
||||||
|
margin: 5px;
|
||||||
|
padding: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
background-color: #cc0000;
|
||||||
|
border-radius: 10px 10px 10px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-element{
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link{
|
||||||
|
display: block;
|
||||||
|
text-align: center;
|
||||||
|
color: white;
|
||||||
|
padding: 14px 16px;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link:hover{
|
||||||
|
background-color: #cc2222;
|
||||||
|
}
|
||||||
|
|
||||||
|
.home{
|
||||||
|
color: black;
|
||||||
|
margin: 5px;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.main-content{
|
||||||
|
margin: 5px;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 5px;
|
||||||
|
border-color: #cc0000;
|
||||||
|
border-radius: 10px 10px 10px 10px;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer{
|
||||||
|
margin: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layout:has(aside) {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 2fr 1fr;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.layout {
|
||||||
|
grid-template-columns: 1fr;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
aside{
|
||||||
|
margin: 5px;
|
||||||
|
background-color: #cc0000;
|
||||||
|
color: white;
|
||||||
|
border-radius: 10px 10px 10px 10px;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
text-align: justify;
|
||||||
}
|
}
|
||||||
|
|||||||
8
templates/404.html
Normal file
8
templates/404.html
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div>
|
||||||
|
<h1>404 Not Found</h1>
|
||||||
|
<p>Aucune page trouvee comportant cet url</p>
|
||||||
|
</div>
|
||||||
|
{% endblock content %}
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{% block content %}
|
|
||||||
<h1>
|
|
||||||
{{section.title}}
|
|
||||||
</h1>
|
|
||||||
<ul>
|
|
||||||
{% for page in section.pages %}
|
|
||||||
<li><a href="{{page.permalink | safe }}">{{ page.title }}</a></li>
|
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
{% endblock content %}
|
|
||||||
@@ -2,27 +2,27 @@
|
|||||||
|
|
||||||
<html lang="fr">
|
<html lang="fr">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
{% include "partials/head.html" %}
|
||||||
<title>Hatmos</title>
|
|
||||||
<meta name="viewport" content="device-width, initial-scale=1">
|
|
||||||
<meta name="description" content="Site portefolio de mes objectifs de vie et mes accomplissements">
|
|
||||||
<link rel="stylesheet" href="{{get_url(path='style.css')}}">
|
|
||||||
<link rel="icon" type="image/png" href="{{get_url(path='favicon.png')}}">
|
|
||||||
</head>
|
</head>
|
||||||
<header>
|
|
||||||
<h1 class="titre"><a href="https://www.hatmos.xyz/">Le site de Hatmos</a></h1>
|
|
||||||
<ul>
|
|
||||||
<li class="titre"><a href="{{ get_url(path='@/accomplissements/_index.md')}}">Accomplissements</a></li>
|
|
||||||
<li class="titre"><a href="{{ get_url(path='@/objectifs/_index.md')}}">Objectifs</li>
|
|
||||||
<li class="titre"><a href="{{ get_url(path='@/cv/CV.md')}}">CV</a></li>
|
|
||||||
</ul>
|
|
||||||
</header>
|
|
||||||
<body>
|
<body>
|
||||||
<section>
|
<header>
|
||||||
|
<h1><a class="home" href="https://www.hatmos.xyz/">Le site de Hatmos</a></h1>
|
||||||
|
</header>
|
||||||
|
<nav>
|
||||||
|
<ul class="nav-list">
|
||||||
|
<li class="nav-element"><a class="nav-link" href="{{ get_url(path='@/daily/_index.md')}}">Daily</a></li>
|
||||||
|
<li class="nav-element"><a class="nav-link" href="{{ get_url(path='@/accomplissements/_index.md')}}">Accomplissements</a></li>
|
||||||
|
<li class="nav-element"><a class="nav-link" href="{{ get_url(path='@/objectifs/_index.md')}}">Objectifs</a></li>
|
||||||
|
<li class="nav-element"><a class="nav-link" href="{{ get_url(path='@/CV.md')}}">CV</a></li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
<div class="layout">
|
||||||
{% block content %} {% endblock content %}
|
{% block content %} {% endblock content %}
|
||||||
<section>
|
{% include "partials/aside.html" %}
|
||||||
|
</div>
|
||||||
</body>
|
</body>
|
||||||
<footer>
|
<footer>
|
||||||
<small id="footer-text">© <script>document.write(new Date().getFullYear())</script> Hatmos. All Rights Reserved.</small>
|
<small class="footer-text">© <script>document.write(new Date().getFullYear())</script> Hatmos. All Rights Reserved.</small>
|
||||||
|
<small class="footer-text"><a href="{{ get_url(path='@/copains.md')}}">Chez les copains</a></small>
|
||||||
</footer>
|
</footer>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1,29 +1,7 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div>
|
<main class="main-content" id="landing">
|
||||||
<h2 class="titre">Bienvenue.</h2>
|
{{ section.content | safe }}
|
||||||
<p id="presentation">
|
</main>
|
||||||
Voici un site pour faire le tour de mes objectifs de vie et projets personnels et professionels ainsi que mes accomplissements.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<h2 class="titre">Accomplissements</h2>
|
|
||||||
<p>
|
|
||||||
<ul>
|
|
||||||
<li class="second-section-list-element"><a href="{{ get_url(path='@/accomplissements/IMEMA.md')}}">IMEMA</a></li>
|
|
||||||
<li class="second-section-list-element"><a href="pongzilla.html">Pongzilla</a></li>
|
|
||||||
</ul>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<h2 class="titre">Objectifs</h2>
|
|
||||||
<ul>
|
|
||||||
<li class="third-section-list-element"><a href="concordvc.html">ConcordVC</a></li>
|
|
||||||
<li class="third-section-list-element"><a href="autoslicer.html">Auto-Slicer</a></li>
|
|
||||||
<li class="third-section-list-element"><a href="autowater.html">Auto-water</a></li>
|
|
||||||
<li class="third-section-list-element"><a href="{{ get_url(path='@/objectifs/porsche-944.md')}}">Porsche 944 turbo</a></li>
|
|
||||||
<li class="third-section-list-element"><a href="mobilite.html">Mobilite</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{% block content %}
|
|
||||||
<h1>
|
|
||||||
{{section.title}}
|
|
||||||
</h1>
|
|
||||||
<ul>
|
|
||||||
{% for page in section.pages %}
|
|
||||||
<li><a href="{{page.permalink | safe}}">{{page.title}}</a></li>
|
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
{% endblock content %}
|
|
||||||
@@ -1,11 +1,7 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
<main class="main-content">
|
||||||
<h1>
|
{{ page.content | safe }}
|
||||||
{{ page.title }}
|
</main>
|
||||||
</h1>
|
|
||||||
|
|
||||||
{{ page.content | safe }}
|
|
||||||
|
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
|
|||||||
6
templates/partials/aside.html
Normal file
6
templates/partials/aside.html
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
{% if page.extra.aside %}
|
||||||
|
<aside>
|
||||||
|
{% set aside = get_page(path="aside/" ~ page.extra.aside) %}
|
||||||
|
{{ aside.content | safe }}
|
||||||
|
</aside>
|
||||||
|
{% endif %}
|
||||||
20
templates/partials/head.html
Normal file
20
templates/partials/head.html
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>
|
||||||
|
{% if page %}
|
||||||
|
{{page.title}}
|
||||||
|
{% elif section %}
|
||||||
|
{{section.title}}
|
||||||
|
{% endif %}
|
||||||
|
</title>
|
||||||
|
<meta name="viewport" content="device-width, initial-scale=1.0">
|
||||||
|
{% if page %}
|
||||||
|
<meta name="description" content="{{page.description}}">
|
||||||
|
{% elif section %}
|
||||||
|
<meta name="description" content="{{section.description}}">
|
||||||
|
{% endif %}
|
||||||
|
{% if page and page.extra.keywords %}
|
||||||
|
<meta name="keywords" content="{{page.extra.keywords | join(sep=', ')}}">
|
||||||
|
{% endif %}
|
||||||
|
<link rel="stylesheet" href="{{get_url(path='style.css')}}">
|
||||||
|
<link rel="icon" type="image/png" href="{{get_url(path='favicon.png')}}">
|
||||||
|
|
||||||
14
templates/sections.html
Normal file
14
templates/sections.html
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<main class="main-content">
|
||||||
|
<h1>
|
||||||
|
{{section.title}}
|
||||||
|
</h1>
|
||||||
|
<ul>
|
||||||
|
{% for page in section.pages %}
|
||||||
|
<li><a href="{{page.permalink | safe }}">{{ page.title }}</a></li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</main>
|
||||||
|
{% endblock content %}
|
||||||
3
templates/shortcodes/audio.html
Normal file
3
templates/shortcodes/audio.html
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<audio controls>
|
||||||
|
<source src="{{ get_url(path=src) }}" type="audio/mpeg">
|
||||||
|
</audio>
|
||||||
18
zola.toml
Normal file
18
zola.toml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# The URL the site will be built for
|
||||||
|
base_url = "https://www.hatmos.xyz"
|
||||||
|
|
||||||
|
title = "Hatmos"
|
||||||
|
|
||||||
|
# Whether to automatically compile all Sass files in the sass directory
|
||||||
|
compile_sass = true
|
||||||
|
|
||||||
|
# Whether to build a search index to be used later on by a JavaScript library
|
||||||
|
build_search_index = false
|
||||||
|
|
||||||
|
[markdown]
|
||||||
|
|
||||||
|
[markdown.highlighting]
|
||||||
|
theme = "catppuccin-mocha"
|
||||||
|
|
||||||
|
[extra]
|
||||||
|
# Put all your custom variables here
|
||||||
Reference in New Issue
Block a user