Add more informations about me and animated emojis

This commit is contained in:
Lucàs
2024-01-13 10:46:39 +01:00
parent c1afbe8e02
commit 6e15d27142
9 changed files with 50 additions and 276 deletions
+2
View File
@@ -1,4 +1,6 @@
.idea/
.vscode/
venv/
.DS_Store
+14 -11
View File
@@ -1,23 +1,22 @@
<header>
<div align="center">
## Hi there! <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Hand%20gestures/Waving%20Hand.png" alt="Waving Hand" width="25" height="25" />
![Hi I'm Lucàs👋](assets/banner.svg)
I'm **Lucàs**, a passionate developer based in 🇫🇷 **Pau, France**.<br/>
My journey in the world of programming started 7 years ago when I fell in love with ![HTML5](https://img.shields.io/static/v1?message=HTML5&logo=html5&logoColor=white&label=+&color=E34F26) ![CSS3](https://img.shields.io/static/v1?message=CSS3&logo=css3&logoColor=white&label=+&color=1572B6) ![JavaScript](https://img.shields.io/static/v1?message=JavaScript&logo=javascript&logoColor=white&label=+&color=F7DF1E).
</div>
</header>
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Travel%20and%20places/Rocket.png" alt="Rocket" width="25" height="25" /> What I do
## 🚀 About Me
- 💻 Currently, I'm studying at **UPPA** for my Master's degree in Informatics.
- 🌐 I specialize in Web Development, and I'm always eager to explore new technologies and frameworks.
- 🌱 I'm constantly learning and expanding my skill set to stay up-to-date with the ever-evolving tech landscape.
I'm a passionate developer from 🇫🇷 **Pau, France**.
## 🔗 Social Links
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Travel%20and%20places/Globe%20Showing%20Europe-Africa.png" alt="Globe Showing Europe-Africa" width="25" height="25" /> Connect with me
[![Linkedin](https://img.shields.io/static/v1?message=LinkedIn&style=for-the-badge&logo=linkedin&logoColor=white&label=+&color=0A66C2&link=https%3A%2F%2Fwww.linkedin.com%2Fin%2Flucasvbr)](https://www.linkedin.com/in/lucasvbr)
[![FreeCodeCamp](https://img.shields.io/static/v1?message=freeCodeCamp&style=for-the-badge&logo=freecodecamp&logoColor=white&label=+&color=0A0A23&link=https%3A%2F%2Fwww.freecodecamp.org%2FLucasVbr)](https://www.freecodecamp.org/LucasVbr)
[![OpenClassRooms](https://img.shields.io/static/v1?message=OpenClassRooms&style=for-the-badge&logoColor=white&label=+&color=black&link=https%3A%2F%2Fopenclassrooms.com%2Ffr%2Fmembers%2F97j9zltv6225)](https://openclassrooms.com/fr/members/97j9zltv6225)
[![Exercism](https://img.shields.io/static/v1?message=Exercism&style=for-the-badge&logo=exercism&logoColor=white&label=+&color=009CAB&link=https%3A%2F%2Fexercism.org%2Fprofiles%2FLucasVbr)](https://exercism.org/profiles/LucasVbr)
## 🛠 Skills
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Objects/Hammer%20and%20Wrench.png" alt="Hammer and Wrench" width="25" height="25" /> Tech Stack
![Android](https://img.shields.io/static/v1?message=Android&logo=android&logoColor=white&label=+&color=3DDC84)
![Angular](https://img.shields.io/static/v1?message=Angular&logo=angular&logoColor=white&label=+&color=DD0031)
@@ -48,6 +47,10 @@ I'm a passionate developer from 🇫🇷 **Pau, France**.
![Symfony](https://img.shields.io/static/v1?message=Symfony&logo=symfony&logoColor=white&label=+&color=000000)
![TypeScript](https://img.shields.io/static/v1?message=TypeScript&logo=typescript&logoColor=white&label=+&color=3178C6)
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Hand%20gestures/Handshake.png" alt="Handshake" width="25" height="25" /> Let's collaborate
👀 I'm always open to collaboration and exciting projects. If you have something in mind, feel free to reach out!
---
<footer>
@@ -60,4 +63,4 @@ I'm a passionate developer from 🇫🇷 **Pau, France**.
![Made with love](https://img.shields.io/badge/-made%20with%20%E2%9D%A4%EF%B8%8F-red)
</div>
</footer>
</footer>
-222
View File
@@ -1,222 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 1000 400" width="1000" height="400">
<foreignObject width="100%" height="100%">
<div xmlns="http://www.w3.org/1999/xhtml">
<style>
.container {
font-family: system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin: 0;
width: 100%;
height: 400px;
/* background: linear-gradient(-45deg, #fc5c7d, #6a82fb, #05dfd7); */
background: #333;
background-size: 600% 400%;
border-radius: 10px;
/* color: white; */
text-align: center;
}
h1 {
text-align: center;
color: #fff;
font-size: 5em;
letter-spacing: 8px;
font-family: "Lucida Console", Monaco, monospace;
font-weight: 400;
/*Create overlap*/
margin: 0;
line-height: 0;
/*Animation*/
animation: glitch1 2.5s infinite;
}
h1:nth-child(2) {
color: #67f3da;
animation: glitch2 2.5s infinite;
}
h1:nth-child(3) {
color: #f16f6f;
animation: glitch3 2.5s infinite;
}
/*Keyframes*/
@keyframes glitch1 {
0% {
transform: none;
opacity: 1;
}
7% {
transform: skew(-0.5deg, -0.9deg);
opacity: 0.75;
}
10% {
transform: none;
opacity: 1;
}
27% {
transform: none;
opacity: 1;
}
30% {
transform: skew(0.8deg, -0.1deg);
opacity: 0.75;
}
35% {
transform: none;
opacity: 1;
}
52% {
transform: none;
opacity: 1;
}
55% {
transform: skew(-1deg, 0.2deg);
opacity: 0.75;
}
50% {
transform: none;
opacity: 1;
}
72% {
transform: none;
opacity: 1;
}
75% {
transform: skew(0.4deg, 1deg);
opacity: 0.75;
}
80% {
transform: none;
opacity: 1;
}
100% {
transform: none;
opacity: 1;
}
}
@keyframes glitch2 {
0% {
transform: none;
opacity: 0.25;
}
7% {
transform: translate(-2px, -3px);
opacity: 0.5;
}
10% {
transform: none;
opacity: 0.25;
}
27% {
transform: none;
opacity: 0.25;
}
30% {
transform: translate(-5px, -2px);
opacity: 0.5;
}
35% {
transform: none;
opacity: 0.25;
}
52% {
transform: none;
opacity: 0.25;
}
55% {
transform: translate(-5px, -1px);
opacity: 0.5;
}
50% {
transform: none;
opacity: 0.25;
}
72% {
transform: none;
opacity: 0.25;
}
75% {
transform: translate(-2px, -6px);
opacity: 0.5;
}
80% {
transform: none;
opacity: 0.25;
}
100% {
transform: none;
opacity: 0.25;
}
}
@keyframes glitch3 {
0% {
transform: none;
opacity: 0.25;
}
7% {
transform: translate(2px, 3px);
opacity: 0.5;
}
10% {
transform: none;
opacity: 0.25;
}
27% {
transform: none;
opacity: 0.25;
}
30% {
transform: translate(5px, 2px);
opacity: 0.5;
}
35% {
transform: none;
opacity: 0.25;
}
52% {
transform: none;
opacity: 0.25;
}
55% {
transform: translate(5px, 1px);
opacity: 0.5;
}
50% {
transform: none;
opacity: 0.25;
}
72% {
transform: none;
opacity: 0.25;
}
75% {
transform: translate(2px, 6px);
opacity: 0.5;
}
80% {
transform: none;
opacity: 0.25;
}
100% {
transform: none;
opacity: 0.25;
}
}
</style>
<div class="container">
<h1>Hi I'm Lucàs👋</h1>
<h1>Hi I'm Lucàs👋</h1>
<h1>Hi I'm Lucàs👋</h1>
</div>
</div>
</foreignObject>
<script xmlns=""/></svg>

Before

Width:  |  Height:  |  Size: 7.2 KiB

+2 -1
View File
@@ -1,4 +1,5 @@
pyyaml
json
requests
simpleicons
simpleicons
urllib3
+4 -10
View File
@@ -1,7 +1,7 @@
import yaml
from src.model.skill_list import SkillList
from src.model.skill_list import skill_list
import requests
from src.model.social_list import SocialList
from src.model.social_list import social_list
class Config:
@@ -22,16 +22,10 @@ class Config:
raise Exception("User not found")
self.config_data["user"] = response.json()
def handle_skill_section(self):
self.config_data["skills"] = str(SkillList(self.config_data["skills"]))
def handle_social_section(self):
self.config_data["socials"] = str(SocialList(self.config_data["socials"]))
def get_data(self):
self.load_config_file()
self.handle_user_info()
self.handle_skill_section()
self.handle_social_section()
self.config_data["skills"] = skill_list(self.config_data["skills"])
self.config_data["socials"] = social_list(self.config_data["socials"])
return self.config_data
+7 -11
View File
@@ -1,15 +1,11 @@
from src.model.skill import Skill
class SkillList:
skills: list[Skill]
def skill_list(skills: list[str]) -> dict[str, str]:
# Sort and remove duplicates
skills = list(set(skills))
skills.sort()
def __init__(self, skills: list[str]):
# Sort and remove duplicates
skills = list(set(skills))
skills.sort()
self.skills = [Skill(skill) for skill in skills]
def __str__(self) -> str:
return "\n".join([str(skill) for skill in self.skills])
skills = {skill: Skill(skill).__str__() for skill in skills}
skills["all"] = "\n".join([str(skill) for skill in skills.values()])
return skills
+5 -8
View File
@@ -1,11 +1,8 @@
from src.model.social import Social
class SocialList:
socials: list[Social]
def __init__(self, socials: list):
self.socials = [Social(social.get("name"), social.get("url")) for social in socials]
def __str__(self) -> str:
return "\n".join([str(social) for social in self.socials])
def social_list(socials: list) -> dict[str, str]:
socials: dict[str, str] = {social.get("name"): str(Social(social.get("name"), social.get("url"))) for social in
socials}
socials["all"] = "\n".join([str(social) for social in socials.values()])
return socials
+1 -1
View File
@@ -3,7 +3,7 @@ class Template:
def __init__(self, template_path: str):
self.template_path = template_path
def render(self, **kwargs) -> str:
def render(self, **kwargs):
with open(self.template_path, 'r') as f:
template = f.read()
+15 -12
View File
@@ -1,22 +1,25 @@
<header>
<div align="center">
## Hi there! <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Hand%20gestures/Waving%20Hand.png" alt="Waving Hand" width="25" height="25" />
![Hi I'm Lucàs👋](assets/banner.svg)
I'm **{user[name]}**, a passionate developer based in 🇫🇷 **{user[location]}**.<br/>
My journey in the world of programming started 7 years ago when I fell in love with {skills[HTML5]} {skills[CSS3]} {skills[JavaScript]}.
</div>
</header>
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Travel%20and%20places/Rocket.png" alt="Rocket" width="25" height="25" /> What I do
## 🚀 About Me
- 💻 Currently, I'm studying at **{user[company]}** for my Master's degree in Informatics.
- 🌐 I specialize in Web Development, and I'm always eager to explore new technologies and frameworks.
- 🌱 I'm constantly learning and expanding my skill set to stay up-to-date with the ever-evolving tech landscape.
I'm a passionate developer from 🇫🇷 **{user[location]}**.
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Travel%20and%20places/Globe%20Showing%20Europe-Africa.png" alt="Globe Showing Europe-Africa" width="25" height="25" /> Connect with me
## 🔗 Social Links
{socials[all]}
{socials}
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Objects/Hammer%20and%20Wrench.png" alt="Hammer and Wrench" width="25" height="25" /> Tech Stack
## 🛠 Skills
{skills[all]}
{skills}
### <img src="https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Hand%20gestures/Handshake.png" alt="Handshake" width="25" height="25" /> Let's collaborate
👀 I'm always open to collaboration and exciting projects. If you have something in mind, feel free to reach out!
---
@@ -30,4 +33,4 @@ I'm a passionate developer from 🇫🇷 **{user[location]}**.
![Made with love](https://img.shields.io/badge/-made%20with%20%E2%9D%A4%EF%B8%8F-red)
</div>
</footer>
</footer>