templates/about_me/index.html.twig line 1
{% extends 'base.html.twig' %}
{% block style %}
@media screen and (max-width: 1400px) {
#presentation {
flex-direction:column;
}
#presentation img {
padding-right:0px;
margin-top:60px;
}
#esport, #collection {
flex-direction:column !important;
}
#photographie {
flex-direction:column-reverse !important;
}
#esportslider, #collectionslider, #photoslider {
margin-top:40px;
}
#esporttext, #photoslider, #collectiontext {
margin-right:0px !important;
}
#esportslider, #phototext, #collectionslider {
margin-left:0px !important;
}
#esporttext, #phototext, #collectiontext {
text-align:center !important;
}
}
@media screen and (max-width: 1750px) {
#esportslider, #photoslider, #collectionslider {
align-self:center;
}
}
#top-title {
display:flex;
background-image: url("{{ asset('img/top-bg.png') }}");
height:400px;
background-position-y: 50%;
background-size: cover;
}
#top-title div {
background: linear-gradient(to top, rgb(38, 38, 38), transparent);
display:flex;
flex-grow:1;
justify-content:center;
}
#top-title h1 {
align-content:center;
font-size:70px;
animation: slide-in-top 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
@keyframes slide-in-top {
0% {
transform: translateY(-100px);
opacity: 0;
}
100% {
transform: translateY(0);
opacity: 1;
}
}
#content {
background-color:#0D0D0D;
box-shadow: 0 20px 30px rgba(0, 0, 0, 0.5);
transform: scale(1);
transition: transform 0.2s;
margin-left:130px;
margin-right:130px;
margin-top:40px;
padding:30px;
padding-top:10px;
border-radius: 20px;
}
#content a {
color:white;
transition: color 0.3s ease, font-weight 0.3s ease;
}
#content a:hover {
color:#1e4578;
font-weight:600;
}
#link a {
color:white;
background-color:#0D0D0D;
padding:20px;
border-radius:10px;
transition: color 0.3s ease, background-color 0.3s ease;
}
#link a:hover {
color:#0e2038;
background-color:white;
}
#passions {
background-color:white;
}
#passions h1 {
text-align:center;
}
#passions h2 {
font-size:30px;
}
#titlepassion {
text-align: -webkit-center;
}
#titlepassion h1 {
padding: 20px;
font-size: 40px;
background-color: black;
color: white;
font-weight: 200;
margin:0px;
}
#presentation {
display:flex;
flex-grow:1;
margin-bottom: 80px;
flex-direction:column;
}
#esport {
background-image:url("{{ asset('img/passions/esport/fond.jpg') }}");
background-size: cover;
background-position-y: 65%;
}
#photographie {
background-image:url("{{ asset('img/passions/photo/fond.jpg') }}");
background-size: cover;
background-position-y: 50%;
}
#collection {
background-image:url("{{ asset('img/passions/carte/fond.jpg') }}");
background-size: cover;
}
#esport, #photographie, #collection {
display:flex;
flex-direction:row;
padding-left:80px;
padding-right:80px;
padding-top:40px;
padding-bottom:40px;
}
#photographie {
background-color:#0D0D0D;
}
#phototext {
text-align:right;
}
#esporttext, #phototext, #collectiontext {
align-self:center;
background-color: rgba(38, 38, 38, 0.5);
padding:40px;
}
#esporttext, #photoslider, #collectiontext {
margin-right:40px;
}
#esportslider, #phototext, #collectionslider {
margin-left:40px;
}
#esportslider, #photoslider, #collectionslider {
color:white;
background-color: rgba(38, 38, 38, 0.5);
align-self:center;
}
.slider {
margin-top:20px;
padding:20px;
padding-bottom:0px;
display:flex;
font-size: 40px;
align-items: center;
}
#bubbleesport, #bubblephoto, #bubblecollection {
justify-content:center;
font-size:20px;
display:flex;
flex-direction:row;
margin-top:20px;
margin-bottom:20px;
}
#esportslider p:hover, #photoslider p:hover, #collectionslider p:hover {
cursor:pointer;
}
#esportslider img, #photoslider img, #collectionslider img {
width:600px;
margin-left:20px;
margin-right:20px;
transition: transform 1s ease-in-out;
}
.scale-in-center {
animation: scale-in-center 1.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
.focus-in-expand {
animation: focus-in-expand 1.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
.text-focus-in {
animation: text-focus-in 1s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}
@keyframes scale-in-center {
0% {
transform: scale(0);
opacity: 1;
}
100% {
transform: scale(1);
opacity: 1;
}
}
@keyframes focus-in-expand {
0% {
letter-spacing: -0.5em;
filter: blur(12px);
opacity: 0;
}
100% {
filter: blur(0px);
opacity: 1;
}
}
@keyframes text-focus-in {
0% {
filter: blur(12px);
opacity: 0;
}
100% {
filter: blur(0px);
opacity: 1;
}
}
@keyframes flip-in-ver-right {
0% {
transform: rotateY(-80deg);
opacity: 0;
}
100% {
transform: rotateY(0);
opacity: 1;
}
}
.slide-out {
-webkit-animation: flip-in-ver-right 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
animation: flip-in-ver-right 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
{% endblock %}
{% block javascripts %}
<script>
let numSliderEsport = 1;
let numSliderPhoto = 1;
let numSliderCollection = 1;
function changeImgSlider(slider, number){
if(slider == "esport"){
numSliderEsport += number;
if(numSliderEsport > 3){
numSliderEsport = 1;
}
if(numSliderEsport < 1){
numSliderEsport = 3;
}
document.getElementById('imgEsport').classList.add('slide-out');
setTimeout(() => {
document.getElementById('imgEsport').classList.remove('slide-out');
}, 500);
switch(numSliderEsport){
case 1:
document.getElementById('bubbleesport').innerHTML = "●○○"
break;
case 2:
document.getElementById('bubbleesport').innerHTML = "●●○"
break;
case 3:
document.getElementById('bubbleesport').innerHTML = "●●●"
break;
}
document.getElementById('imgEsport').src="{{ asset('img/passions/esport')}}/"+numSliderEsport+".jpg";
} else if(slider == "photo"){
numSliderPhoto += number;
if(numSliderPhoto > 6){
numSliderPhoto = 1;
}
if(numSliderPhoto < 1){
numSliderPhoto = 6;
}
document.getElementById('imgPhoto').classList.add('slide-out');
setTimeout(() => {
document.getElementById('imgPhoto').classList.remove('slide-out');
}, 500);
switch(numSliderPhoto){
case 1:
document.getElementById('bubblephoto').innerHTML = "●○○○○○"
break;
case 2:
document.getElementById('bubblephoto').innerHTML = "●●○○○○"
break;
case 3:
document.getElementById('bubblephoto').innerHTML = "●●●○○○"
break;
case 4:
document.getElementById('bubblephoto').innerHTML = "●●●●○○"
break;
case 5:
document.getElementById('bubblephoto').innerHTML = "●●●●●○"
break;
case 6:
document.getElementById('bubblephoto').innerHTML = "●●●●●●"
break;
}
document.getElementById('imgPhoto').src="{{ asset('img/passions/photo')}}/"+numSliderPhoto+".jpg";
} else {
numSliderCollection += number;
if(numSliderCollection > 2){
numSliderCollection = 1;
}
if(numSliderCollection < 1){
numSliderCollection = 2;
}
document.getElementById('imgCollection').classList.add('slide-out');
setTimeout(() => {
document.getElementById('imgCollection').classList.remove('slide-out');
}, 500);
switch(numSliderCollection){
case 1:
document.getElementById('bubblecollection').innerHTML = "●○"
break;
case 2:
document.getElementById('bubblecollection').innerHTML = "●●"
break;
}
document.getElementById('imgCollection').src="{{ asset('img/passions/carte')}}/"+numSliderCollection+".jpg";
}
}
</script>
{% endblock %}
{% block body %}
<div id="presentation">
<div id="top-title">
<div>
<h1>À propos de moi</h1>
</div>
</div>
<div style="flex-grow:1;text-align:center;">
<div id="content">
<div style="text-align: -webkit-center;">
<h1 style="padding:10px;border-radius:10px;font-size:40px;background-color: white;width: fit-content;border: solid white;color: #0D0D0D;" class="focus-in-expand">Qui suis-je ?</h1>
</div>
<div class="text-focus-in" style="animation-delay:1s;">
<p style="margin-top:40px;">
Moi c'est Lucas. J'habite dans les environs de Reims et à tout juste 21 ans, j'ai décroché un Bac+3 en développement Web !
</p>
<p>Si tu as fait un tour sur ma page d'accueil, tu as probablement vu que je suis aussi un amateur de photographie.
J'ai mon propre Canon 2000D et je m'amuse à prendre des clichés ici et là. Je ne suis peut-être pas un pro,
mais c'est un hobby qui me permet d'exprimer ma créativité et de capturer de beaux moments.
</p>
<p>En dehors de tout ça, j'adore voyager et découvrir de nouvelles cultures. Mon rêve ultime ? Mettre les pieds
au Japon dans quelques années ! L'idée de plonger dans une culture si unique, de goûter à une cuisine incroyable
et de vivre cette combinaison entre tradition et modernité me fait vraiment rêver.
</p>
<p>J'ai aussi pu avoir la chance de m'investir dans des associations durant mes études !
J'ai notamment débuté en devenant président de l'association d'étudiant de ma promotion lors de mon DUT,
une belle expérience quoi que un peu gâchée par le covid qui a bloqué beaucoup de chose.
Aujourd'hui, je suis membre de l'association LeBlueWall et j'ai le plaisir de pouvoir gérer principalement la régie de la partie Twitch !
</p>
<p>Donc voilà, je suis ce gars cool qui aime la tech, la créativité, et qui a soif d'aventure. Mon parcours et mes passions
reflètent ma curiosité sans fin, et je suis super excité de voir ce que l'avenir me réserve.
En attendant, je continue à suivre mes rêves et à m'éclater !
</p>
</div>
</div>
<div id="link" style="margin-top:50px">
<a class="fade-in" href="https://m-lyshu-nextjs.vercel.app/" style="margin-right:40px;animation-delay: 2s;">Voir mon CV numérique</a>
</div>
</div>
</div>
<div id="passions">
<div id="titlepassion">
<h1>Mes passions</h1>
</div>
<div id="esport">
<div id="esporttext">
<h2>L'Esport</h2>
<p>En tant que fervent supporter de la <strong>Karmine Corp</strong>, mon aventure dans l'esport a pris une dimension passionnante et inoubliable. Mon engagement ne se limite pas à regarder les compétitions, mais s'étend bien au-delà, me plaçant au cœur de l'action en tant que <strong>membre actif de la communauté LeBlueWall.</strong> <br><br>
Les moments les plus mémorables de mon expérience ont été gravés lors de déplacements aux événements majeurs de l'esport. Ma première immersion a eu lieu aux <strong>Worlds de Rocket League à Düsseldorf</strong>, où l'effervescence et l'énergie du BlueWall ont transcendé les frontières virtuelles pour devenir une véritable communion. Le <strong>KCX3</strong> a été une autre étape marquante de mon parcours. Vivre l'action en direct, <strong>soutenir la Karmine Corp dans les moments cruciaux</strong> et célébrer chaque victoire avec mes camarades de tribune ont créé des liens indéfectibles. L'<strong>Ultimate Fighting Arena</strong> a été un autre chapitre palpitant de mon aventure esportive. Les combats intenses et la compétition acharnée ont élevé l'atmosphère à des sommets inégalés. <br><br>
Mon rôle en tant que <strong>régisseur de la chaîne Twitch</strong> pour l'association des ultras LeBlueWall m'a offert une perspective unique en coulisses. Contribuer à la diffusion des moments clés et interagir avec la communauté en ligne ont ajouté une dimension interactive à mon expérience, <strong>renforçant ainsi le lien entre les supporters.</strong> <br><br>
Être supporter de la Karmine Corp ne se limite pas à encourager une équipe, <strong>c'est embrasser une culture, une passion partagée</strong>, et c'est exactement ce que je vis en tant que membre actif du BlueWall. Chaque événement, chaque rencontre, et chaque victoire sont des éléments fondateurs de mon voyage esportif, <strong>un périple qui va au-delà des pixels pour devenir une aventure humaine et collective</strong>. Et c'est avec une fierté immense que je continue de porter les couleurs de la Karmine Corp, un supporter dévoué au cœur du mouvement LeBlueWall.</p>
</div>
<div id="esportslider">
<div class="slider">
<p onclick="changeImgSlider('esport', -1)">‹</p>
<img src="{{ asset('img/passions/esport/1.jpg') }}" id="imgEsport">
<p onclick="changeImgSlider('esport', 1)">›</p>
</div>
<div id="bubbleesport">
●○○
</div>
</div>
</div>
<div id="photographie">
<div id="photoslider">
<div class="slider">
<p onclick="changeImgSlider('photo', -1)">‹</p>
<img src="{{ asset('img/passions/photo/1.jpg') }}" id="imgPhoto">
<p onclick="changeImgSlider('photo', 1)">›</p>
</div>
<div id="bubblephoto">
●○○○○○
</div>
</div>
<div id="phototext">
<h2>La photographie</h2>
<p>Mon incursion dans le monde fascinant de la photographie a été <strong>une aventure que j'ai toujours rêvé de vivre</strong>. Longtemps passionné par la photographie, j'ai finalement sauté le pas grâce à l'argent provenant de mon alternance, me permettant d'acquérir mon tout premier appareil photo : <strong>un Canon 2000D Reflex.</strong><br><br>
Cet appareil représente bien plus qu'un simple outil, <strong>c'est une porte d'entrée vers un univers où la créativité et la capture de moments précieux prennent vie à travers l'objectif</strong>. Chaque cliché que je réalise devient une exploration visuelle, une tentative de figer l'instant éphémère dans le temps.<br><br>
Mes premiers pas dans la photographie m'ont conduit à expérimenter différentes techniques, à apprendre les subtilités de l'art de composer une image. Les premiers shoots ont été un mélange d'excitation et d'appréhension, mais avec chaque déclenchement, <strong>j'ai découvert une nouvelle passion qui a pris racine dans mon quotidien.</strong><br><br>
Capturer la beauté du monde qui m'entoure est devenu un moyen de <strong>m'exprimer artistiquement</strong>. Que ce soit la majesté d'un paysage, la complexité des détails urbains, ou la simplicité d'un instant volé, mon Canon 2000D a été le témoin silencieux de mes explorations photographiques.<br><br>
Avec mon Canon 2000D en main, je me lance dans une <strong>aventure visuelle</strong>, cherchant à capturer l'essence même de chaque moment. Chaque clic de l'obturateur est une invitation à explorer le monde à travers un nouvel objectif, et c'est avec enthousiasme et détermination que je continue de développer mon regard artistique, <strong>découvrant la magie de la photographie à chaque instant figé dans le temps.</strong></p>
</div>
</div>
<div id="collection">
<div id="collectiontext">
<h2>La collection de cartes</h2>
<p>La collection de cartes Pokémon a toujours été bien plus qu'un simple loisir pour moi, <strong>c'est une passion qui transcende le simple fait de posséder des cartes</strong>. Pour moi, l'essence de cette expérience réside davantage dans le plaisir palpitant <strong>d'ouvrir un booster que dans l'objectif de rassembler toutes les cartes existantes</strong>. C'est un voyage où chaque paquet ouvert devient une fenêtre vers l'inconnu, une source d'excitation et de découvertes.<br><br>
Lorsque je m'immerge dans le rituel d'ouvrir un booster, l'anticipation atteint son paroxysme. Chaque carte révélée ajoute une dose d'excitation, que ce soit une carte commune ou une rareté étincelante. <strong>L'effervescence de la découverte prime sur l'ambition de compléter une collection exhaustive</strong>.<br><br>
Parmi toutes les séries de cartes Pokémon, ce sont <strong>Poing de Fusion</strong> et <strong>Faille Paradoxe</strong> qui ont conquis mon cœur de collectionneur. Les illustrations captivantes et les choix de design de ces séries ajoutent une dimension artistique à ma passion, transformant chaque carte en <strong>une œuvre d'art miniature</strong>.<br><br>
La recherche des cartes de ces séries est devenue un véritable plaisir, une quête où <strong>chaque trouvaille est célébrée comme une victoire personnelle</strong>. Les moments d'émerveillement devant une rareté inattendue font partie intégrante de cette expérience de collection.<br><br>
Ainsi, ma collection de cartes Pokémon n'est pas simplement un ensemble de morceaux de carton colorés, mais <strong>un témoignage de moments de joie, d'émerveillement et de camaraderie</strong>. Chaque carte a son histoire, chaque booster ouvert est un chapitre de cette aventure continue. Et c'est dans cette passion pour l'inattendu et le plaisir de la découverte que réside <strong>le véritable enchantement de ma collection de cartes Pokémon.</strong></p>
</div>
<div id="collectionslider">
<div class="slider">
<p onclick="changeImgSlider('collection', -1)">‹</p>
<img src="{{ asset('img/passions/carte/1.jpg') }}" id="imgCollection">
<p onclick="changeImgSlider('collection', 1)">›</p>
</div>
<div id="bubblecollection">
●○
</div>
</div>
</div>
</div>
{% endblock %}