Setup para Ruby / Rails: Windows + WSL
Este artigo descreve como configurar um ambiente de desenvolvimento Ruby / Rails no Windows 11 com WSL. Ele inclui a instalação do Visual Studio Code, Asdf, Ruby, NodeJS, SQLite, Rails e Ruby LSP (plugin para o VSCode).
Antes de começarmos a copiar e colar os comandos no terminal, serĂĄ preciso habilitar o Hyper-V e fazer a instalação do Windows Terminal e Visual Studio Code (todos os passos estĂŁo descritos abaixo). Caso tenha alguma dĂșvida, problema fique Ă vontade para deixar um comentĂĄrio que eu tentarei te ajudar. đ
Caso vocĂȘ jĂĄ tenha o WSL + Ubuntu instalado e configurado, vocĂȘ pode pular para a seção “Configurando o editor padrĂŁo do Ubuntu”.
Habilitando o Hyper-V
O Hyper-V é uma tecnologia de virtualização que permite executar måquinas virtuais no Windows. Ele é necessårio para o WSL 2, que é a versão mais recente do Windows Subsystem for Linux. Para habilitå-lo, siga os passos abaixo:
1) Escreva appwiz.cpl no campo de busca e pressione Enter.
2) Click em “Ativar ou desativar recursos do Windows”, marque a caixa “Hyper-V” e clique em OK.
Instalando o Windows Terminal
O Windows Terminal Ă© um aplicativo que permite abrir vĂĄrias abas de terminal em uma Ășnica janela. Ele Ă© muito Ăștil para alternar entre o terminal do Windows e o WSL. Para instalĂĄ-lo, siga os passos abaixo:
1) Acesse a Microsoft Store.
2) Procure por Windows Terminal e instale o aplicativo.
Instalando o WSL (Windows Subsystem for Linux 2)
O WSL é um recurso que permite executar aplicativos Linux no Windows. Serå através dele que iremos instalar o Ruby, Rails e outras ferramentas de desenvolvimento. Para instalå-lo, siga os passos abaixo:
1) Procure por “Windows Terminal” no campo de busca do Windows, clique com o botĂŁo direito do mouse e selecione “Executar como administrador”.
2) Execute: wsl –install -d Ubuntu
3) Após a instalação, aparecerå uma mensagem pedindo para definir o usuårio e senha do Ubuntu. Faça isso e anote essas informaçÔes, pois serão necessårias para acessar o WSL.
4) Ao finalizar vocĂȘ serĂĄ conectado automaticamente ao Ubuntu.
Instalando o Visual Studio Code
O Visual Studio Code é um editor de código-fonte desenvolvido pela Microsoft. Ele é muito popular entre os desenvolvedores Ruby / Rails por ser leve, råpido e ter uma grande quantidade de extensÔes. Para instalå-lo, siga os passos abaixo:
1) No Microsoft Store, procure por “Visual Studio Code” e instale o aplicativo.
2) Após a instalação, abra o Visual Studio Code e instale a extensão do WSL.
Habilitando Ubuntu como padrĂŁo no Windows Terminal
1) Abra o Windows Terminal. Clique na seta para baixo no canto superior direito (ao lado da aba) e selecione “ConfiguraçÔes”.
2) VĂĄ para Startup > Default profile e altere o valor para “Ubuntu”.
3) Feche e abra o Windows Terminal novamente para aplicar as alteraçÔes. VocĂȘ verĂĄ que o terminal padrĂŁo agora Ă© o Ubuntu.
Configurando o editor padrĂŁo do Ubuntu
Desse ponto em diante, todos os comandos serĂŁo executados no terminal do Ubuntu.
Para facilitar a edição de arquivos, vamos configurar o Visual Studio Code como editor padrão do terminal. Para isso, basta copiar e colar os comandos abaixo no terminal:
sudo apt update
# Adicione o Visual Studio Code como editor padrĂŁo do terminal
echo ‘export EDITOR=”code –wait”‘ >> ~/.bashrc
# Recarregue o arquivo de configuração do terminal
. ~/.bashrc
Instalação do Asdf
asdf é um gerenciador de ferramentas e suas diferentes versÔes. Ele permite instalar, gerenciar e alternar entre vårias versÔes de Ruby, NodeJS, dentre outros programas e linguagens de programação. Execute os comandos abaixo para fazer a sua instalação.
sudo apt install -y curl git
# Instale o asdf
# — https://asdf-vm.com/guide/getting-started.html#_2-download-asdf
git clone https://github.com/asdf-vm/asdf.git ~/.asdf –branch v0.14.0
# Configure o asdf para inicializar no terminal
echo ‘. “$HOME/.asdf/asdf.sh”‘ >> ~/.bashrc
# Configure o autocomplete do asdf
echo ‘. “$HOME/.asdf/completions/asdf.bash”‘ >> ~/.bashrc
# Recarregue o terminal
. ~/.bashrc
Instalação do Ruby
Ruby Ă© a linguagem de programação utilizada no framework Ruby on Rails. Os comandos abaixo instalam a Ășltima versĂŁo do Ruby e a definem como a padrĂŁo do sistema.
# — https://github.com/rbenv/ruby-build/wiki#ubuntudebianmint
sudo apt install -y autoconf patch build-essential rustc libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libgmp-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libdb-dev uuid-dev
# Adicione o plugin ao asdf
asdf plugin add ruby
# Instale a Ășltima versĂŁo
asdf install ruby latest:3
Instalação do NodeJS
NodeJS é uma plataforma de desenvolvimento de aplicaçÔes em JavaScript. O node (ou nodejs) é utilizado pelo Rails para compilar assets (como CSS e JavaScript).
Os comandos abaixo instalam a Ășltima versĂŁo e a definem como a padrĂŁo do sistema.
# — https://github.com/nodejs/node/blob/main/BUILDING.md#building-nodejs-on-supported-platforms
sudo apt install –y python3 g++ make python3–pip
# Adicione o plugin ao asdf
asdf plugin add nodejs
# Instale a Ășltima versĂŁo
asdf install nodejs latest
# Verifique a versĂŁo que foi instalada
asdf list nodejs # DeverĂĄ aparecer algo como:
# 22.3.0
# Defina essa versĂŁo como a padrĂŁo do sistema
asdf global nodejs 22.3.0
# Faça a instalação do yarn
npm install –g yarn
# Verifique a versĂŁo padrĂŁo
node –v
Instalação do SQLite
SQLite Ă© um banco de dados SQL embutido. Ou seja, ele Ă© um banco de dados que nĂŁo requer um servidor separado jĂĄ que tudo Ă© armazenado em um Ășnico arquivo.
Instalação do Ruby LSP no Visual Studio Code
O Ruby LSP é um plugin para VSCode que fornece recursos como autocompletar, formatação dentre outros, tanto para Ruby quanto para Rails.
gem install ruby-lsp
# Instale a extensĂŁo do Ruby LSP no Visual Studio Code
code –install-extension shopify.ruby-lsp
Instalação do Rails
# Verifique a versĂŁo que foi instalada
rails -v
Criando um projeto Rails
Visando testar a instalação do Ruby e do Rails, vamos criar um projeto para verificar se tudo estå funcionando.
cd ~
# Crie uma pasta para organizar seus projetos
mkdir Workspace
# Entre na pasta
cd Workspace
# Crie um novo projeto Rails
# O banco de dados padrĂŁo Ă© o SQLite
rails new myapp
# Acesse a pasta do projeto
cd myapp
# Crie o banco de dados
bin/rails db:create
# Inicie o servidor
bin/rails s
Abra outra aba no terminal e execute o comando para acessar a aplicação no navegador:
Criando um gerenciador de contatos
bin/rails g scaffold Person first_name last_name email birthdate:date
# Execute as migraçÔes para criar a tabela no banco de dados
bin/rails db:migrate
# Inicie o servidor (caso nĂŁo esteja rodando)
# bin/rails s
# Acesse o gerenciador de contatos no navegador
explorer.exe http://localhost:3000/people
Navegue pelo sistema e teste as funcionalidades de listagem, cadastro, visualização, edição e exclusão de contatos.
Melhorando a aparĂȘncia da aplicação
Visando melhorar o visual do sistema, vamos adicionar o Pico CSS versĂŁo class-less, que como o nome sugere nĂŁo faz uso classes CSS. Ou seja, basta adicionar as tags HTML para obter um estilo bonito e padronizado.
cd ~/Workspace/myapp
# Abra o VSCode
code .
Dentro do VSCode, abra o arquivo app/views/layouts/application.html.erb (utilize o Ctrl + p para buscar o arquivo) e adicione o seguinte trecho de cĂłdigo dentro da tag.<head>:
rel=“stylesheet”
href=“https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.classless.min.css”
/>
Nesse mesmo arquivo, envolva o conteĂșdo da tag <body> com uma tag <main>:
<main><%= yield %></main>
</body>
Após essas alteraçÔes, acesse o navegador e recarregue para ver o novo visual de todas as påginas do sistema.
Adicionando validaçÔes ao modelo Person
Embora funcional, o gerenciador de cadastro não possui validaçÔes. Vamos adicionar algumas para garantir que os dados informados sejam vålidos.
Através do VSCode, abra o arquivo app/models/person.rb (utilize o Ctrl + p para buscar o arquivo) e adicione as validaçÔes:
validates :email, format: /@/, allow_blank: true
Volte o navegador e tente cadastrar/editar uma pessoa sem informar o nome ou o e-mail (sem @).
ConclusĂŁo
Viu como foi simples configurar um ambiente de desenvolvimento Ruby / Rails no Windows 11 + WSL?
Curtiu, entĂŁo acesse as referĂȘncias abaixo para obter mais informaçÔes sobre cada um dos programas e linguagens utilizadas.
VocĂȘ sente dificuldades com inglĂȘs? Acesse esse outro post para aprender como traduzir conteĂșdos tĂ©cnicos de forma prĂĄtica atravĂ©s do Google Translator.
Gostou do conteĂșdo? Tem outra dica? EntĂŁo deixe seu comentĂĄrio aqui embaixo. Valeu! đ
Nota: Este artigo foi escrito com base no Ubuntu 22.04. Caso vocĂȘ esteja utilizando outra versĂŁo, os comandos podem nĂŁo funcionar corretamente. Caso encontre algum problema, deixe um comentĂĄrio que eu tentarei te ajudar. đ
ReferĂȘncias:
A lista abaixo contĂ©m os sites de referĂȘncia utilizados para a criação deste documento. Ela segue a ordem de aparição no post.
Ruby on Rails – (Getting Started)
JĂĄ ouviu falar do ada.rb – Arquitetura e Design de AplicaçÔes em Ruby? Ă um grupo focado em prĂĄticas de engenharia de software com Ruby. Acesse o canal no telegram e junte-se a nĂłs em nossos meetups 100% on-line.