Skip to content

CaioSimioni/bash-and-blade

Repository files navigation

Bash & Blade ⚔️⌨️

Um RPG de terminal escrito em Rust

License: MIT
Rust
Build Status


🎮 Descrição

Bash & Blade é um RPG de texto jogável diretamente no terminal, onde você explora masmorras, resolve enigmas e enfrenta criaturas usando apenas o terminal. Feito em Rust, o jogo combina:

  • Narrativa imersiva (estilo livro-jogo).
  • Combate baseado em turnos.
  • Desafios lógicos e interação via CLI.

🚀 Objetivos

  • Criar um framework de telas de terminal
  • Criar as primeiras telas
  • Dar contexto ao jogo. (Mapas, Itens, Personagens, etc.)

⚙️ Como instalar o Rust

Se ainda não possui o Rust instalado, execute:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Após a instalação, reinicie o terminal e verifique:

rustc --version
cargo --version

💻 Comandos para Desenvolver, Testar e Rodar

Baixar o projeto

git clone https://github.com/CaioSimioni/bash-and-blade.git
cd bash-and-blade

Compilar e rodar o jogo

cargo run --release

Rodar os testes automatizados

cargo test

Gerar documentação

cargo doc --open

Outras opções úteis

  • Checar o código sem compilar:

    cargo check
  • Formatar o código:

    cargo fmt
  • Analisar possíveis erros/lints:

    cargo clippy

📂 Estrutura do Projeto

.
├── .github/workflows     # Github Actions (CI)
├── assets/               # Arquivos de texto (história, diálogos)
├── logs/                 # Registros do sistema
├── src/                  # Código-fonte Rust
│   ├── main.rs           # Ponto de entrada
│   ├── game/             # Lógica do jogo (módulos separados)
│   └── utils/            # Funções utilitárias para o jogo
├── target/               # Compilado do cargo
├── tests/                # Testes automatizados
└── Cargo.toml            # Dependências e metadados

📦 Dependências

Adicione as dependências ao arquivo Cargo.toml:

Depois, baixe e instale as dependências com:

cargo build

🧑‍💻 Como contribuir

Antes de enviar suas alterações para o repositório, execute o script de pre-commit para garantir a qualidade do código:

./pre-commit.sh

Esse script irá:

  • Rodar todos os testes (cargo test)
  • Compilar o projeto (cargo build --release)
  • Verificando formatação (cargo fmt -- --check)
  • Rodar os lints (cargo clippy -- -D warnings)

Se tudo passar, você pode commitar e enviar seu PR normalmente!

Para mais detalhes, veja o arquivo CONTRIBUTING.md.


📜 Licença

Distribuído sob a licença MIT. Veja LICENSE para detalhes.

About

Um RPG de terminal escrito em Rust

Topics

Resources

License

Contributing

Stars

Watchers

Forks