Glimpse is a VSCode extension that allows you to run VSCode commands with easy-to-remember key bindings. You no longer need to remember complex shortcuts — Glimpse shows the available key bindings as you type.
Release-plz updates the versions and changelogs of your rust packages, by analyzing your git history,
based on conventional commits
.
A template for cargo generate
that aims to be a starting point suitable for
the vast majority of rust projects that will be hosted on GitHub. It includes documentation,
continuous integration and continuous delivery.
REST API that, given a Pokémon name, returns its description in Shakespeare's style.
Pokemon description is taken from PokéAPI and it is converted by using Shakespeare translator.
You can use poke-speare
both as a web server and as a rust library.
This action uses the VUnit docker image to test your vhdl or verilog code hosted on GitHub. You can see some examples of how I used this action here.
In this GitHub organization I collect all the personal experiments I do on my STM32f407G-DISC1 with rust. If you are interested give it a look, but please do not copy-paste in production. 😅
The main goal of doc-org
is to bring the conciseness of org mode to latex users.
While latex is great at specifying how the document should be formatted, it is a little bit too verbose at describing the content of the document itself.
Doc-org runs on docker
, which means you don't need to have latex
or emacs
installed on your machine and you can use it to generate documents with Continuous Integration.
My mom during her spare time writes some poems and I wanted to collect them in a nicely formatted book. In the meantime I really wanted to learn rust, an amazing systems programming language with no garbage collector that ensures memory safety and data-race freedom.
Therefore, I created poetry-book, a rust library that allows to create a poetry book in latex, starting from plain text and poetry-book-cli, which is a command line interface frontend. Examples repository contains some example latex books aumatically generated via github actions continuous integration.
After reading "Clean Architecture" by Robert C. Martin, I really wanted to put into practice all the amazing concepts lovely explained in the book. In the meantime, I was also studying Kotlin, a programming language developed by Jetbrains that in my opinion really brings java to the next level.
Therefore I developed GitHubStats, a CLI program that uses web scraping in order to parse some public information about repositories and users. Data retrieved from github.com are cached locally and you can specify cache validity time from settings.
Spacemacs is my favorite text editor therefore, to keep my sanity, whenever I have to use another IDE I try to bring spacemacs key bindings with me.
This project tries to mimic Spacemacs key bindings in Eclipse IDE.
For instance, SPC b b
in Spacemacs let you switch between buffers, so it makes
sense to map it to the Quick switch editor Eclipse command.
Spacemacs is my favorite text editor therefore, to keep my sanity, whenever I have to use another IDE I try to bring spacemacs key bindings with me.
This project tries to mimic Spacemacs key bindings in IDEs based on the IntelliJ platform, i.e. IntelliJ IDEA, PyCharm, CLion, PhpStorm, WebStorm, RubyMine, AppCode, DataGrip, GoLand, Rider, Cursive, and Android Studio.
For instance, SPC f f
in Spacemacs opens a file, so it makes sense to map it to the GotoFile IntelliJ action.
While I was a student at Politecnico di Milano I worked on the City4Age European project for 150 hours.
The main purpose of this thesis is to analyze the performances of different hybrid localization approaches, which combine in a smart way some of the most relevant indoor localization techniques.
I developed a testbed for hybrid indoor localization, which is made of a DecaWave TREK1000 evaluation kit, which utilizes Ultra-wideband (UWB) as wireless protocol and two-way ranging (TWR) as localization technique, and four Raspberry Pi 3 model B, which enable to perform localization with WiFi and RSS.
I carried out the measurements at a laboratory with different wide areas, in which I was able to reproduce both Line-of-sight (LOS) and Non-line-of-sight (NLOS) conditions.
A game for 2 to 4 players, where each player should tap the accelerometer once and then again after 5 seconds. The player who gets closer to 5 seconds wins.
The project is built for the STM32F4-DISCOVERY board, written in C++ on top of Miosix RTOS.
I worked for 150 hours, in which I contributed to the development of the Eclipse plugin "DICE Optimisation tool", which is part of the European project "DICE H2020".
The DICE Optimisation tool allows for designing public or private cloud clusters to support data intensive applications based on Hadoop, Spark or Stork technologies. Given the characteristics of the application at hand and a set of alternative deployments, the tool can determine the minimum cost configuration.
I had the oppurtunity to work with Prof. Danilo Ardagna and to improve my knowledge of java, linux and git, writing software that will be actually used in a working environment by other people.
Project for Advanced Computer Architecture course of M.Sc. Computer Science and Engineering at Politecnico di Milano.
A sender (Python) modifies extra-functional requirements in the adaptive application of the receiver (C++) using the Internet of Things protocol MQTT. You can find the project presentation here.
Solution of the "Walking Bus Challenge" of the Foundations of Operations Research course of M.Sc. Computer Science and Engineering at Politecnico di Milano.
This challenge consisted in the minimization of the number of chaperons involved in the setup of a walking bus system for an elementary school, respecting some constraints that involved mainly the distance between students' houses and school and the risk of the roads.
In mathematical terms this problem is translated in a special case of the spanning tree problem, in which you have to minimize the number of leaves.
Since there was a time constraint, this solution involves heuristic and it classified fourth out of 36 proposed solutions.
Adaptation of the Council of Four board game. The videogame is composed of a server and client, both written in java. The client can choose the User Interface (cli or gui) and communication method (socket or RMI).
CoAPthon is a python implementation of the Internet of Things protocol CoAP.
This is a proxy that translates HTTP requests to CoAP requests and vice versa using the python 2.7 standard library.
Management and monitoring system for sensors and actuators, that uses the CoAP protocol for the communication between the embedded devices and stores all the data produced by those devices with the DBMS MongoDB.