Skip to content

Instantly share code, notes, and snippets.

View rmsaitam's full-sized avatar

Reginaldo rmsaitam

View GitHub Profile
@rmsaitam
rmsaitam / deploy-site-react.yml
Created February 12, 2026 19:45
Deploy site com React
name: Deploy React via FTP
on:
push:
branches:
- main
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout do código
@rmsaitam
rmsaitam / deploy-site.yml
Created February 12, 2026 19:43
Deploy site no GitHub Actions
name: Deploy via FTP
on:
push:
branches:
- main # O deploy ocorre sempre que você enviar para a branch main
jobs:
web-deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
@rmsaitam
rmsaitam / tailscale-guide.md
Created January 30, 2026 12:53 — forked from rafaelquintanilha/tailscale-guide.md
Why and how to setup Tailscale

Guia Tailscale - Acesso Remoto Seguro

O que é Tailscale?

Tailscale cria uma rede privada entre seus dispositivos, como se todos estivessem conectados no mesmo WiFi, mesmo estando em lugares diferentes.

Normalmente, pra acessar seu computador de casa de fora, você precisa abrir portas no roteador, configurar IP fixo ou DDNS, e ainda fica exposto na internet. Com Tailscale, você instala nos dois dispositivos, faz login, e pronto - eles se enxergam como se estivessem no mesmo WiFi, não importa onde estejam fisicamente. Seu computador de casa fica invisível na internet pública, mas acessível pra você de qualquer lugar.

Como funciona

@rmsaitam
rmsaitam / setup.md
Created January 26, 2026 17:40 — forked from dabit3/setup.md
How to set up Clawdbot on Digital Ocean

Clawdbot on DigitalOcean

1. Create a Droplet

Ubuntu 24.04 LTS, nearest region

2. Select Premium AMD

2 GB RAM / 1 AMD CPU / 50 GB NVMe

3. SSH into server

@rmsaitam
rmsaitam / main.py
Created August 18, 2025 18:34
Exemplo com FastAPI do Python
from pydantic import BaseModel
# Criando a aplicação
app = FastAPI()
# Rota inicial
@app.get("/api")
def read_root():
return {"mensagem": "Bem-vindo à minha primeira API com FastAPI!"}
@rmsaitam
rmsaitam / download_assincrono.py
Created August 15, 2025 18:16
Exemplo de programação assíncrona no Python
import asyncio
import aiohttp
async def fetch(url):
async with aiohttp.ClientSession() as session:
async with session.get(url) as response:
print(f"Baixando {url}...")
html = await response.text()
print(f"Concluído: {url} ({len(html)} caracteres)")
return html
@rmsaitam
rmsaitam / main.py
Created June 20, 2024 13:17
Detecção de faces com Python
import cv2
from cvzone.FaceDetectionModule import FaceDetector
# Inicializa a captura de vídeo da webcam
video = cv2.VideoCapture(0)
# Verifica se a webcam foi inicializada corretamente
if not video.isOpened():
print("Erro ao acessar a câmera")
exit()
@rmsaitam
rmsaitam / safe_password.py
Created February 26, 2024 19:02
Script Python de exemplo de como deve ser criar e armazenar senhas de usuários no banco de dados
import bcrypt
import mysql.connector
# Função para conectar ao banco de dados MySQL
def conectar_mysql():
return mysql.connector.connect(
host="localhost",
user="root",
password="secret", # Senha configurada para o MySQL
database="safe_password" # Nome do banco de dados
@rmsaitam
rmsaitam / client_grpc.py
Last active January 30, 2024 11:16
Cliente GRPC
import grpc
import examplo_pb2
import examplo_pb2_grpc
def run_client():
channel = grpc.insecure_channel("localhost:50051")
stub = examplo_pb2_grpc.GreeterStub(channel)
response = stub.SayHello(examplo_pb2.HelloRequest(name="gRPC"))
print("Greeter client received:", response.greeting)
@rmsaitam
rmsaitam / server_grpc.py
Last active January 30, 2024 11:15
Servidor GRPC
import grpc
from concurrent import futures
import examplo_pb2
import examplo_pb2_grpc
class GreeterServicer(examplo_pb2_grpc.GreeterServicer):
def SayHello(self, request, context):
return examplo_pb2.HelloResponse(greeting=f"Hello, {request.name}!")
def run_server():