Skip to content

Instantly share code, notes, and snippets.

View rgiaviti's full-sized avatar
Focusing

Ricardo Giaviti rgiaviti

Focusing
View GitHub Profile
@rgiaviti
rgiaviti / Main.kt
Created August 30, 2023 19:07
POC CBOR - Kotlin/Jackson
import com.fasterxml.jackson.annotation.JsonIgnoreProperties
import com.fasterxml.jackson.annotation.JsonProperty
@JsonIgnoreProperties(ignoreUnknown = true)
data class User(
@field:JsonProperty("name")
val name: String,
@field:JsonProperty("age")
val age: Int,
@rgiaviti
rgiaviti / vault-docker-start.sh
Created September 15, 2021 20:30
Start a local instance of Vault Server (in memory)
$ docker run -d --cap-add=IPC_LOCK -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' -e 'VAULT_DEV_LISTEN_ADDRESS=0.0.0.0:1234' -p 8200:1234 vault
$ docker stop vault
$ docker start vault
@rgiaviti
rgiaviti / main.go
Last active September 8, 2021 18:51
String template with GO
package main
import (
"bytes"
"text/template"
)
func main() {
// string template
t := template.Must(template.New("secrets").Parse("Hello, my token is: {{.TOKEN}}"))
@rgiaviti
rgiaviti / string_similarity.py
Created August 30, 2021 17:11
get string similarity in Python with SequenceMatcher
from difflib import SequenceMatcher
def similarity(string1: str, string2: str) -> float:
return SequenceMatcher(a=string1, b=string2).ratio()
def similarity_in_percent(string1: str, string2: str) -> float:
value = similarity(string1, string2) * 100
return round(value, 2)
@rgiaviti
rgiaviti / ordering-dict-list.py
Created August 23, 2021 19:25
Ordering a list of dicts with Python
players = [
{"name": "Pelé","age": 80},
{"name": "Beckenbauer", "age": 75},
{"name": "Baresi", "age": 61},
{"name": "Zamorano", "age": 54},
{"name": "Mauro Shampoo", "age": 64}
]
sorted_players_by_name = sorted(players, key=lambda k: k["name"])
sorted_players_by_age = sorted(players, key=lambda k: k["age"])
@rgiaviti
rgiaviti / modal-mais-excerpt-formatter.py
Created March 14, 2021 23:13
Formatador de Extrato da Modal Mais
from classes import ExcerptInfo
from datetime import datetime
import csv
EXCERPT_RAW_MODAL = ""
FORMATTED_EXCERPT_CSV = ""
class ExcerptInfo:
def __init__(self, date):
@rgiaviti
rgiaviti / ParserBCIPCA.py
Last active November 15, 2020 21:50
BACEN parser IPCA
import requests
import json
import datetime
bacen_ipca_url = "https://api.bcb.gov.br/dados/serie/bcdata.sgs.189/dados?formato=json"
output_json = "/home/bla/Desktop/igpm.json"
metadata = {
"status": "ATIVO",
"data-ultima-atualizacao": datetime.datetime.now().strftime('%d/%m/%Y'),
"versao": "1.1.0",
@rgiaviti
rgiaviti / InterceptorExemplo.java
Last active November 12, 2020 20:10
Exemplo Interceptor - Spring Boot
import lombok.RequiredArgsConstructor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
@RequiredArgsConstructor
public class WebConfiguration implements WebMvcConfigurer {
private final MyInterceptor requestInterceptor;
@rgiaviti
rgiaviti / municipios-brasileiros.json
Last active September 19, 2023 17:56
Lista de municípios brasileiros em formato JSON e aberto para uso público. Fonte: IBGE
{
"meta-info":{
"status": "DEPRECATED",
"data-ultima-atualizacao":"2018-08-29",
"data-referencia":"2017-07-01",
"versao":"1.0.3",
"website":"https://medium.com/@rgiaviti/munic%C3%ADpios-brasileiros-em-formato-json-32337dd00d49",
"fontes":[
"IBGE"
]
@rgiaviti
rgiaviti / unidades-federativas.json
Last active June 18, 2020 20:10
JSON com informações abertas sobre as Unidades Federativas do Brasil. Disponível para uso público.
{
"meta-info":{
"status": "DEPRECATED",
"data-ultima-atualizacao":"2018-07-25",
"data-referencia":"2017-07-01",
"versao":"1.0.2",
"website":"https://medium.com/@rgiaviti/unidades-federativas-do-brasil-como-json-1a40c0ec2cff",
"fontes":[
"IBGE",
"Constituição do Brasil"