Skip to main content

環境構築かんきょうこうちく: Setup del Entorno de Desarrollo

Este documento detalla los pasos para configurar una estación de trabajo de élite en Sanwa Monozukuri. Nuestro objetivo es la 標準化ひょうじゅんか (Hyōjunka - Estandarización) para que cualquier artesano pueda colaborar en cualquier proyecto sin fricciones de configuración.


🛠️ Herramientas Base (El Cimiento)

1. Sistema Operativo

Preferimos sistemas basados en Unix (macOS o Linux/Arch/Debian) por su cercanía con nuestros entornos de despliegue y su robustez técnica.

2. Gestor de Paquetes

Utilizamos gestores que permitan versiones reproducibles:

  • macOS: Homebrew
  • Linux: apt, pacman o nix según la distribución.

3. Terminal y Shell

El terminal es nuestro pincel principal.

  • Shell: zsh o fish son los estándares.
  • Prompt: Recomendamos Starship por su velocidad (escrito en Rust) y claridad visual.

🐹 Toolchain de Go

Para proyectos de microservicios y orquestación:

  1. Instalación: brew install go o descarga desde golang.org.
  2. Variables de Entorno: Asegúrate de que $GOPATH y $GOBIN estén correctamente configurados en tu .zshrc o .bashrc.
  3. Herramientas Obligatorias:
    • gofmt: Para mantener la (Armonía) visual del código.
    • golangci-lint: Nuestro estándar de auditoría estática.

🦀 Toolchain de Rust

Para sistemas críticos, seguridad y alto rendimiento:

  1. Instalación: Nunca instales Rust vía gestor de paquetes del sistema. Usa siempre rustup:
curl --proto '=https' --tlsv1.2 -sSf [https://sh.rustup.rs](https://sh.rustup.rs) | sh
  1. Componentes Necesarios:
    • clippy: Nuestro mentor de estilo y mejores prácticas.
    • rust-analyzer: El motor de inteligencia para el editor.
    • rustfmt: Formateo automático estricto.

🛡️ Seguridad y Soberanía (かなめ - Kaname)

Un entorno Sanwa debe ser inexpugnable.

1. Firma de Commits (GPG/SSH)

Todo código en GitHub debe estar firmado. Sin firma, el código no se integra en la rama principal.

# Ejemplo para generar llave SSH para firma
ssh-keygen -t ed25519 -C "tu@sanwa.com"

2. Gestión de Secretos

  • Bitwarden: Solicita acceso a la organización Sanwa para obtener las llaves de API y secretos de desarrollo local. Nunca guardes secretos en archivos .env que no estén en .gitignore.

🎨 Editor de Código: El 道場どうじょう (Dojo)

Recomendamos VS Code o Neovim por su soporte de LSP.

Extensiones Mandatorias (VS Code):

  • Go: (Go Team at Google)
  • rust-analyzer: (rust-lang)
  • Error Lens: Para ver los errores en línea y actuar con 改善かいぜん (Kaizen) inmediata.
  • Even Better TOML: Para configuraciones de Rust.

📐 Flujo de Trabajo Local

  1. Clonación: Usa SSH para clonar repositorios de la organización.
  2. Linting: Configura tu editor para ejecutar rustfmt y gofmt al guardar.
  3. Pruebas: Antes de cada Push, ejecuta el set de pruebas local:
    • Go: go test ./...
    • Rust: cargo test

"Un entorno de trabajo ordenado es el reflejo de una mente disciplinada. Cuida tus herramientas y ellas cuidarán de tu código."