https://github.com/natanback77/cowl
Cowl é um CLI leve que monitora, recompila e executa automaticamente seu código C a cada alteração.
https://github.com/natanback77/cowl
c javascript nodejs npm-package
Last synced: about 1 year ago
JSON representation
Cowl é um CLI leve que monitora, recompila e executa automaticamente seu código C a cada alteração.
- Host: GitHub
- URL: https://github.com/natanback77/cowl
- Owner: NatanBack77
- Created: 2025-06-10T19:24:07.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-28T21:34:29.000Z (about 1 year ago)
- Last Synced: 2025-06-28T22:29:40.315Z (about 1 year ago)
- Topics: c, javascript, nodejs, npm-package
- Language: JavaScript
- Homepage: https://cowl.vercel.app/
- Size: 297 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
Cowl 🦉
CLI para monitorar, compilar e executar código C automaticamente.
Inspirado na coruja vigilante, que observa e age no momento certo.
---
## 📦 Instalação
### Instalação global via npm:
```bash
npm install -g @natabael/cowl
```
Ou, para instalar localmente:
```bash
npm install @natabael/cowl
```
## 🚀 Uso
```bash
# Executa o watcher com padrões:
cowl
# Especifica arquivo-fonte e nome do executável:
cowl --src=hello.c --out=hello_app
```
### Opções
| Flag | Alias | Descrição | Default |
| -------------- | ----- | ----------------------------------------- | ------- |
| `--src ` | `-s` | Arquivo C a ser monitorado | `app.c` |
| `--out ` | `-o` | Nome do executável compilado | `app` |
| `--delay ` | `-d` | Atraso em milissegundos antes de executar | `100` |
| `--help` | | Exibe ajuda e opções disponíveis | |
## ⚙️ Variáveis de Ambiente
Você também pode configurar via env:
```bash
export C_SOURCE_FILE=mycode.c
export C_EXECUTABLE_NAME=mybin
export EXEC_DELAY_MS=200
cowl
```
## 📄 Configuração de Release (Semantic Release)
Este projeto utiliza **Semantic Release** para automatizar versões, CHANGELOG e tags no GitHub.
1. Commit com **Conventional Commits** (`feat:`, `fix:`, `docs:` etc.)
2. Push em branches `main`, `develop` ou `release/*`
3. GitHub Actions executa `npx semantic-release` e:
* Analisa commits (`@semantic-release/commit-analyzer`)
* Gera notas de release (`@semantic-release/release-notes-generator`)
* Atualiza `CHANGELOG.md` (`@semantic-release/changelog`)
* Cria release no GitHub (`@semantic-release/github`)
* Faz commit de `CHANGELOG.md`, `package.json` e `Cowl.js` (`@semantic-release/git`)
## 🛠️ Desenvolvimento
```bash
# Instala dependências dev e roda watcher localmente
npm install
npm run dev
```
## 📝 Licença
MIT © Natanael Marcelino da Silva Vieira