Skip to content

Instantly share code, notes, and snippets.

View rafael-neri's full-sized avatar
💻
Working from home

Rafael Neri rafael-neri

💻
Working from home
View GitHub Profile

Sprint 2: Integração com API e Fluxo Assíncrono

O Novo Problema Gerador

O sistema da sprint01 já permite cadastrar, listar e remover clientes com persistência local. Porém, os usuários precisam digitar o endereço manualmente — o que é lento e propenso a erros. Além disso, quando o sistema está "processando", não há nenhum feedback visual, deixando o usuário confuso.

O objetivo deste sprint é evoluir o sistema para consumir dados de uma API externa, implementar feedback visual de carregamento e orquestrar o fluxo de cadastro com operações assíncronas usando Promises e async/await.


@rafael-neri
rafael-neri / webview.md
Created December 22, 2025 13:08
Webview using golang

Using Golang

Golang alternative using webview (modern, simple and lightweigth).

Install

go get github.com/webview/webview
@rafael-neri
rafael-neri / noinspection.php
Created July 2, 2024 14:06 — forked from gskema/noinspection.php
PhpStorm @noinspection list of all tags
<?php
/** @noinspection ? */
// PhpUndefinedGotoLabelInspection Undefined goto label
// PhpUndefinedVariableInspection Undefined variable
// PhpUndefinedMethodInspection Undefined method
// PhpUndefinedNamespaceInspection Undefined namespace
// PhpUndefinedClassInspection Undefined class
// PhpUndefinedFunctionInspection Undefined function
@rafael-neri
rafael-neri / commands.sh
Last active December 29, 2022 18:21
Atomate run docker-composer in specific folder
# if using bash
echo 'export WORKRDIR="$HOME/my/workdir"' >> ~/.bashrc
# if using zsh
echo 'export WORKRDIR="$HOME/my/workdir"' >> ~/.zshrc
# download script
sudo curl https://bit.ly/3G9oEZk --output /bin/script
# permission
@rafael-neri
rafael-neri / .github_workflows_schedule.yaml
Created January 10, 2022 00:53
Schedule 15 minutes from GitHub - Cron
name: 15-minute-schedule
on:
schedule:
- cron: '*/15 * * * *'
jobs:
cron:
runs-on: ubuntu-latest
steps:
- name: Call your API route
run: |
@rafael-neri
rafael-neri / 01-ServeCommand.php
Last active September 27, 2021 22:45
Add Support to "php artisan serve" in Lumen
<?php
// File: app/Console/Commands/ServeCommand.php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use Symfony\Component\Console\Input\InputOption;
class ServeCommand extends Command {
@rafael-neri
rafael-neri / snap-clean.sh
Created September 21, 2021 20:12
Sanp Clean: Remove disabled (unused) snap packages
#!/bin/sh
set -eu
snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
sudo snap remove "$snapname" --revision="$revision"
done
@rafael-neri
rafael-neri / script.sh
Created May 26, 2020 13:28
Git Rename Tag Local and Remote
# Create new from old
git tag new old
# Remove old tag
git tag -d old
# Sync changes from old tag to remote
git push origin :refs/tags/old

A Regra 80/20 e a Arte de Priorizar

Lembra da Regra de Pareto? O foco tem que estar naqueles 20% de esforço que geram 80% do resultado. No fim das contas, ter tempo é uma mistura de priorização com organização.

Primeiro de tudo, você precisa definir o que é realmente importante. Prioridade é a palavra-chave. Muita gente se perde em mil técnicas de organização, mas não sai do lugar porque não tem foco. Só de ajustar isso, você já ganha tempo, porque naturalmente vai cortar o que não te traz benefício nenhum.

Para priorizar de verdade, seus valores precisam estar bem definidos. Você tem que saber para onde quer ir e como pretende chegar lá.

O Exercício do "Dia Perfeito"

@rafael-neri
rafael-neri / strong-passwords.php
Created November 6, 2019 02:54 — forked from tylerhall/strong-passwords.php
A user friendly, strong password generator PHP function.
<?PHP
// Generates a strong password of N length containing at least one lower case letter,
// one uppercase letter, one digit, and one special character. The remaining characters
// in the password are chosen at random from those four sets.
//
// The available characters in each set are user friendly - there are no ambiguous
// characters such as i, l, 1, o, 0, etc. This, coupled with the $add_dashes option,
// makes it much easier for users to manually type or speak their passwords.
//
// Note: the $add_dashes option will increase the length of the password by