Skip to content

Instantly share code, notes, and snippets.

View paulocoutinhox's full-sized avatar

Paulo Coutinho paulocoutinhox

View GitHub Profile
@paulocoutinhox
paulocoutinhox / game-sprite-prompt.md
Created September 19, 2026 06:19
Game Sprite Prompt

You are a SENIOR PIXEL ARTIST specialized in creating ORIGINAL sprites for classic 2D tile-based MMORPGs.

Your task is to create sprites for:

  • characters
  • NPCs
  • monsters

in the visual style called:

@paulocoutinhox
paulocoutinhox / ProductDetails.swift
Created June 4, 2026 07:32
Product Details Test in SwiftUI
import SwiftUI
struct ProductDetailsScreen: View {
@State private var selectedImage = 0
@State private var selectedColor = "Black"
@State private var selectedSize = "M"
@State private var quantity = 1
@State private var isFavorite = false
@State private var selectedSection = "Details"
@paulocoutinhox
paulocoutinhox / generate.sh
Created May 21, 2025 02:47
Gerador de áudio usando Docker e Inteligência Artificial
docker run --rm \
--platform linux/amd64 \
-v $(pwd):/app/shared \
usrbinbrain/kokoro-tts-container \
"NO princípio criou Deus os céus e a terra. E a terra era sem forma e vazia; e havia trevas sobre a face do abismo; e o Espírito de Deus se movia sobre a face das águas." \
output.mp3 --voice pf_dora --speed 1.0 --lang pt-br
@paulocoutinhox
paulocoutinhox / AppDelegate.swift
Last active October 7, 2023 17:39
iOS - Código para rodar sem Main.Storyboard
@UIApplicationMain //or @main
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
window = UIWindow()
window?.rootViewController = RootViewController()
window?.makeKeyAndVisible()
return true
@paulocoutinhox
paulocoutinhox / WebServer.java
Created July 19, 2023 03:29
Java NanoHTTP WebServer
package server;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import fi.iki.elonen.NanoHTTPD;
public class WebServer extends NanoHTTPD {
@paulocoutinhox
paulocoutinhox / mobile-tools-opinion.md
Last active February 10, 2022 06:55
Minha opinião sobre o uso de ferramentas para a criação rápida de aplicações mobile

Sempre que me perguntam sobre o uso do Flutter, React Native, Xamarin e Native Script para o desenvolvimento de aplicativos, eu sempre respondo mostrando como elas funcionam.

O meu desafio aqui é conseguir explicar como todo o universo mobile funciona e também cada uma dessas ferramentas em um pequeno post sem entrar em termos técnicos (me ajuda Jesus).

A principal coisa que você precisa entender sobre essas ferramentas é que elas não sobrevivem sozinhas e que são DEPENDENTES das plataformas nativas da Apple e do Google. Na prática, o que você tem no final é um pacote que vai embarcado numa aplicação padrão gerada na hora que você cria o projeto com essas ferramentas.

Vou usar o Flutter como exemplo, pois já fiz alguns cursos e tenho dois aplicativos reais feitos com ele (Avinu e iMinerator).

O Flutter nada mais é que um framework open source do Google que cria um projeto para Android e iOS onde ao compilar seu código Dart ele o embarca no projeto nativo criado para o Android Studio e Xcode, como se

#include <iostream>
#include <memory>
using namespace std;
class Renderer
{
public:
int xyz = 99;
git checkout --orphan newBranch
git add -A
git commit -am "clean repository"
git branch -D main
git branch -m main
git push -f origin main
git gc --aggressive --prune=all
@paulocoutinhox
paulocoutinhox / delete-workflow-run.sh
Last active November 13, 2021 03:30
Delete All Github Runs From Workflow
# Requirements: Github Client (gh) and JQ tool (jq)
# 1 - Change: OWNER, REPO
# 2 - Execute one time to get all workflows IDs
# 3 - Change: WORKFLOW_ID
OWNER=<your user/org name>
REPO=<repo name>
# list workflows