diff --git a/src/elements/portfolio.svelte b/src/elements/portfolio.svelte
index a8f2648..c287322 100644
--- a/src/elements/portfolio.svelte
+++ b/src/elements/portfolio.svelte
@@ -29,12 +29,17 @@
{@html md.render(hobby.content[currentLanguage])}
-
{#each hobby.languages as language }
- {language+" "}
+
{#each hobby.languages as language,index }
+ {language}{index!=hobby.languages.length-1?', ':''}
{/each}
-
{#each hobby.tecnologies as tecnology }
- {tecnology+" "}
+
{#each hobby.tecnologies as tecnology, index }
+ {tecnology}{index!=hobby.tecnologies.length-1?', ':''}
+ {/each}
+
+
diff --git a/src/model/portfolio.json b/src/model/portfolio.json
index 23bf47c..10d4a31 100644
--- a/src/model/portfolio.json
+++ b/src/model/portfolio.json
@@ -25,7 +25,9 @@
"start":"2021-09-15",
"end":"2021-09-28"},
"title":{"en":"Greenpass server validator","it":"Greenpass server validatore"},
- "content":{"en":"I've created a server in Typescript with Express.js endpoints that can read the raw data from a Green pass Qrcode and establish if it is valid with the Italian regulations.","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "content":{
+ "en":"I've created a server in Typescript with Express.js endpoints that can read the raw data from a Green pass Qrcode and establish if it is valid with the Italian regulations. I [released the software](https://git.jatus.tech/Jatus/dgcserververifier) under AGPLv3 as requested from the DCC utils library.",
+ "it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
"collaborators":[],
"languages":["typescript"],
"tecnologies":["Nodejs"],
@@ -38,8 +40,8 @@
},
"title": {"en":"Keyboard","it":"Tastiera"},
"content": {
- "en":"",
- "it":""
+ "en":"I spend a lot of time at my desk writing on the PC with not the best posture. This kind of behaviour was going to take a toll on my well-being, so I decided to start looking for a split design keyboard.\n The first keyboard that I found was the [Ergodox-EZ](https://ergodox-ez.com), but the steep price of more than 300 euros put me off. Then I found the subreddit [r/ErgoMechBoards](https://www.reddit.com/r/ErgoMechKeyboards) and saw a lot of different concepts, the one that stuck with me was the [lily58](https://github.com/kata0510/Lily58).\n So, I ordered all the pieces from various online stores. I took the kit from the [Keyhive](https://keyhive.xyz) shop for the base parts, like PCB and guide for the switches, bought the switches from [CandyKeys](https://candykeys.com) and a cheap keycap set from amazon.\n When all the pieces showed up at my place, I soldered all the components and assembled the keyboard. To add some flare, I printed with my 3d printer a custom case that I found on Thingiverse.\n In the future, I'd like to add a system to tilt the keyboard to fix the pronation issue.",
+ "it":"Io passo molto tempo alla mia scrivania a scrivere al PC e spesso non ho una corretta postura. Sperando di mitigare il problema, iniziai a cercare delle tastiere ergonomiche come quelle con il design *split*.\n La prima che trovai fu [Ergodox-EZ](https://ergodox-ez.com), ma il prezzo di più 300 euro mi fece desistere. Successivamente trovai il *subreddit* [r/ErgoMechBoards](https://www.reddit.com/r/ErgoMechKeyboards) e vidi molti modelli diversi, quello che mi piacque di più fu [lily58](https://github.com/kata0510/Lily58).\n Quindi, ordinai i pezzi da diversi negozi online. Presi da [Keyhive](https://keyhive.xyz) le parti base come il PCB e la guida per i tasti e da [CandyKeys](https://candykeys.com) gli switch, per quanto riguarda i keycaps li presi da Amazon ordinando dal meno caro.\n Quanto tutti i pezzi arrivarono, con pazienza e dedizione saldai tutti componenti e assemblai la tastiera. Per aggiungere un tocco personale, stampai con la mia stampante 3d la scocca che trovai su Thingverse.\n Come miglioramenti futuri, mi piacerebbe aggiungere un sistema per angolare la tastiera e risolvere il problema di pronazione dei polsi."
},
"collaborators": [],
"languages": [
@@ -54,96 +56,122 @@
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"Progetto stampante 3D che utilizzo per stampare le mie idee.","it":"Progetto stampante 3D che utilizzo per stampare le mie idee."},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "title":{"en":"3D printer, to print all my ideas","it":"Stampante 3D per stampare le mie idee."},
+ "content":{
+ "en":"I'm a tech enthusiast and, I like to overcome challenges made for the maker type of people. To organize the 3d printer area, I followed a few of the many bits of advice from the 3d printing *community*. Like, build the furniture to hold the printer from two IKEA's Lack stack one upon the other and joined with some 3d printed parts. Another upgrade was to add a Raspberry pi 4 with a camera module and OctoPrint software to remote manage the printer whenever.",
+ "it":"Sono un appassionato di tecnologia e mi piace anche affrontare sfide tipiche dei *maker*. Per organizzare meglio gli spazi ho seguito gli innumerovili consigli della *community* sul costruire un mobile a partide da due mobili ikea \"Lack\" e di unirli con due pezzi stampati. Un'altra miglioria cho ho effettuato è sul sistema di controllo della stampante stessa aggiungendo un raspberry pi 4 con webcam e munito del software octoprint che mi permette di controllarne lo stato in qualsisi momento."
+ },
"collaborators":[],
- "languages":[],
- "tecnologies":[],
- "images":[]
+ "languages":["bash","python"],
+ "tecnologies":["raspberry"],
+ "images":["https://cloud.pettinato.eu/index.php/apps/files_sharing/publicpreview/P4BTpYMqsHCm53T?x=1105&y=979&a=true&file=IMG_20210213_215455.jpg&scalingup=0"]
},{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"Server","it":"Server"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "title":{"en":"Unraid Server","it":"Unraid Server"},
+ "content":{
+ "en":"To manage all my software and data, I built a home server with Unraid server. I based the system on the Ryzen platform with an R9 3900X CPU, two 2TB disks for work data and software and, 4 disks 4TB for family storage",
+ "it":"Per gestire il mio software e i miei dati, ho costruito un server basandomi sulla distrubuzione Unraid il server è basto su una piattaforma ryzen con R9 3900X, due dischi da 2TB per le cose da lavoro e 4 dischi da 4TB per lo spazio famigliare "
+ },
"collaborators":[],
- "languages":[],
- "tecnologies":[],
+ "languages":["yml"],
+ "tecnologies":["docker","unraid","GNU/Linux"],
"images":[]
},
{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"Progetto PC workstation","it":"Progetto PC workstation"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "title":{"en":"Workstation","it":"Postazione di lavoro"},
+ "content":{
+ "en":"My workstation is build upon my custom desk made on request and can accommodate my PC and laptop, I use both of them to work and develop my projects. The monitors are an 34\" 21:9 with a resoluztion of 3440x1440 and a 27\" 16:9 with a resolution of 2560x1440. ",
+ "it":"La mia postazione di lavoro parte dalla scrivania che è stata fatta su misura e può accomodare il mio computer fisso e il mio portatile, entrambe macchine che uso per lavorare e dedicarmi ai miei progetti. I miei monitor sono un 21:9 da 34\" con risoluzione 3440x1440 e un 16:9 da 27\" in verticale da 2560x1440"
+ },
"collaborators":[],
"languages":[],
"tecnologies":[],
+ "images":["https://cloud.pettinato.eu/index.php/apps/files_sharing/publicpreview/zS3DBDYKbbKS3En?x=1105&y=979&a=true&file=IMG_20211006_163258.jpg&scalingup=0"]
+ },
+ {
+ "year":{
+ "start":"2021-09-15",
+ "end":"2021-09-30"},
+ "title":{"en":"Software Engineering Project","it":"Progetto di Ingegneria del Software"},
+ "content":{
+ "en":"While in university, I worked on a project for the software engineering course. The group decided to develop the project Etherless, a FAAS based on Etherium and AWS lambda. The system worked like this, a user writes a function and uploads it to the service that assigns a cost of execution. Then, when a user wants to execute the function, must issue the request and pay the execution through the Ethereum network. We released all the software in MIT licence here [Tenners Unipd](https://github.com/TennersUnipd).",
+ "it":"Per il corso di ingegneria del software sono stato assegnato ad un gruppo di colleghi di corso universitario e di sviluppare uno dei progetti proposti. Scegliemmo di sviluppare il progetto Etherless un **FAAS** usando la piattaforma AWS lambda per l'esecuzione delle funzioni caricate dagli utenti che altri possono pagare per eseguirle richiedendo e pagando l'esecuzione attraverso il contratto che sviluppammo per ethereum. Il tutto è stato rilasciato e pubblicato sul gruppo GitHub [Tenners Unipd](https://github.com/TennersUnipd)"
+ },
+ "collaborators":[{"name":"Gezim","surname":"Cikaqi","ref":"https://www.linkedin.com/in/gezimcikaqi/"},{"name":"Gabriel","surname":"Ciulei","ref":"https://www.linkedin.com/in/gabriel-ciulei/"},{"name":"Simone","surname":"Franconetti","ref":"https://www.linkedin.com/in/simone-franconetti-2b48b4147/"},{"name":"Giovanni","surname":"Incalza","ref":"https://www.linkedin.com/in/giovanni-incalza/"},{"name":"Nicola","surname":"Salvadore","ref":"https://www.linkedin.com/in/nicola-salvadore-02b015210/"},{"name":"Paola","surname":"Trevisan","ref":"https://www.linkedin.com/in/paola-trevisan-166891113/"}],
+ "languages":["typescript","solidity","yml"],
+ "tecnologies":["Nodejs","AWS Lambda","docker","github action","ethereum"],
"images":[]
},
{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"Progetto di Ingegneria del Software Etherless con il Gruppo Tenners","it":"Progetto di Ingegneria del Software Etherless con il Gruppo Tenners"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "title":{"en":"Latex-multicompiler","it":"Latex-multicompiler"},
+ "content":{
+ "en":"I developed a GitHub action to compile Latex documents from a git repository. I did this to produce the PDFs as artefacts and to practice the **CI/CD** practices. I released the project with an MIT license [here](https://github.com/Jatus93/Latex-multicompiler).",
+ "it":"Ho sviluppato una GitHub action per compilare documenti Latex da un repository git. Ho creato questo software per creare PDF come artefatti e quindi fare pratica in pratiche di **CI/CD**. Ho rilasciato il tutto con licenza MIT [qui](https://github.com/Jatus93/Latex-multicompiler)."
+ },
"collaborators":[],
- "languages":[],
- "tecnologies":[],
+ "languages":["bash"],
+ "tecnologies":["docker","github action"],
"images":[]
},
{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"compilatore Latex per diversi documenti","it":"compilatore Latex per diversi documenti"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "title":{"en":"Spell checker, aspell github action","it":"Controllo ortografico, aspell github action"},
+ "content":{
+ "en":"I developed a GitHub action to perform a spell check on PDF documents from a git repository, the software transform the PDF file to a plain txt and checks the spelling of words using aspell. I released the project with an LGPL-2.1 license [here](https://github.com/Jatus93/spellCheck).",
+ "it":"Ho sviluppato una GitHub action per effettuare il controllo ortografico, il software trasforma i PDF in file di testo e verifica che le parole siano scritte correttamente usando Aspell. Ho rilasciato il software su licenza LGPL-2.1 [qui](https://github.com/Jatus93/spellCheck)"
+ },
"collaborators":[],
- "languages":[],
- "tecnologies":[],
+ "languages":["bash"],
+ "tecnologies":["docker","github action"],
"images":[]
},
{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"compilatore aspell per diversi documenti","it":"compilatore aspell per diversi documenti"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
+ "title":{"en":"Project for object oriented programming course","it":"Progetto per il corso di programmazione ad oggetti"},
+ "content":{
+ "en":"I delevoped a IoT object container for the object oriented programming course with the possiblity to edit the devices' configuration",
+ "it":"Per il corso di programmazione ad oggetti ho fatto un container di dispositivi iot con la possibilità di configurare i dispositivi"
+ },
"collaborators":[],
- "languages":[],
- "tecnologies":[],
- "images":[]
+ "languages":["C++"],
+ "tecnologies":["QT"],
+ "images":["/QContainer.png"]
},
{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
- "title":{"en":"PAO","it":"PAO"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
- "collaborators":[],
- "languages":[],
- "tecnologies":[],
- "images":[]
- },
- {
- "year":{
- "start":"2021-09-15",
- "end":"2021-09-30"},
- "title":{"en":"Tech web","it":"Tech web"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
- "collaborators":[],
- "languages":[],
- "tecnologies":[],
- "images":[]
+ "title":{"en":"Tech web","it":"Tecnologie Web"},
+ "content":{
+ "en":"For the tech web course, my colleagues and I develop a portfolio website for an artist where the user could upload and manage all their images and also included a blog with a comments section.",
+ "it":"Per il corso di tecnologie web io e i miei colleghi abbiamo sviluppato un sito web vetrina per artisti con un sistema per la gestione dei contenuti."},
+ "collaborators":[{"name":"Giuseppe Vito","surname":"Bitetti","ref":"https://www.linkedin.com/in/giuseppe-vito-bitetti-587751200"}, {"name":"Enrico","surname":"Buratto","ref":"https://www.linkedin.com/in/enrico-buratto-04104b151"},{"name":"Mariano","surname":"Sciacco","ref":"https://www.linkedin.com/in/marianosciacco/"}],
+ "languages":["php","SQL"],
+ "tecnologies":["apache","mariaDb"],
+ "images":["/techweb.png"]
},
{
"year":{
"start":"2021-09-15",
"end":"2021-09-30"},
"title":{"en":"antrl parser Swl","it":"antrl parser Swl"},
- "content":{"en":"","it":"Ho creato un server in typescript e express che leggendo i dati *raw* del Qr code del green pass può determinarne la sua validità, ho [rilasciato il software](https://git.jatus.tech/Jatus/dgcserververifier) in licenza AGPLv3 come previsto dalla librearia DCC utils rilasciata dal ministero della salute italiano"},
- "collaborators":[],
+ "content":{
+ "en":"For the course about Automata and Formal, my colleague and I developed a translator from a made-up language SWL to a more common C++. For this project, the professors required the use of \"antlr\" a framework used to recognise a regular expression and apply logic for every rule. For more information https://swl.debug.ovh/ (italian)",
+ "it":"Per il corso di Automi e linguaggi formali, il mio collega ed io sviluppammo un traduttore da un linguaggio inventato, SWL, a uno più comune C++. Per questo compito i professori richiesero l'uso di un framework chiamato \"antrl\" che è in grado di riconoscere le epressioni regolare che gli vengono proposte di applicare delle logiche al riguardo. Per maggiori info https://swl.debug.ovh/"
+ },
+ "collaborators":[{"name":"Mariano","surname":"Sciacco","ref":"https://www.linkedin.com/in/marianosciacco/"}],
"languages":[],
"tecnologies":[],
"images":[]
diff --git a/src/routes/index.svelte b/src/routes/index.svelte
index eaa05f4..3aea278 100644
--- a/src/routes/index.svelte
+++ b/src/routes/index.svelte
@@ -94,10 +94,10 @@
.menu {
width: 100%;
- // position: -webkit-sticky; /* Safari */
- // position: sticky;
- // bottom: 0;
- // top: 0;
+ position: -webkit-sticky; /* Safari */
+ position: sticky;
+ bottom: 0;
+ top: 0;
}
\ No newline at end of file
diff --git a/static/QContainer.png b/static/QContainer.png
new file mode 100644
index 0000000..261ec75
Binary files /dev/null and b/static/QContainer.png differ
diff --git a/static/techweb.png b/static/techweb.png
new file mode 100644
index 0000000..73f7c9e
Binary files /dev/null and b/static/techweb.png differ