PJRunner è un'utility da riga di comando per Linux progettata per automatizzare l'avvio di progetti complessi (es. Microservizi, Full-stack app) utilizzando tmux.
Permette di gestire più azioni (backend, frontend, database, ecc.) all'interno di un'unica sessione organizzata, garantendo lo scorrimento dei log tramite mouse e la persistenza dei processi.
- 📦 Installazione One-Liner: Si installa e si aggiorna direttamente da GitHub.
- 🗂️ Gestione Multi-Tab: Ogni componente del progetto ha la sua tab dedicata in tmux.
- 🖱️ Mouse Support: Scorrimento dei log fluido con la rotella del mouse abilitato di default.
- 🛠️ Configurazione Dinamica: Aggiungi nuovi progetti in modo interattivo senza toccare il codice.
- 📂 Storage JSON: Tutte le configurazioni sono salvate in un file JSON leggibile e portabile.
- 🐧 Universale: Compatibile con Fedora (Ptyxis), Ubuntu, Arch e le principali distro.
Puoi installare PJRunner eseguendo il seguente comando nel tuo terminale:
curl -fsSL https://raw.githubusercontent.com/Biziol/project-runner/main/install.sh | bashNota: L'installer verificherà e installerà automaticamente le dipendenze necessarie (
jqetmux) dopo aver chiesto il tuo permesso.
Lancia il comando di configurazione interattiva:
pjrunner addTi verrà chiesto:
- L'ID del progetto (es:
roadmap). - Il Titolo dell'azione (es:
backend). - Il Comando da eseguire (es:
cd ~/project/backend && ./mvnw spring-boot:run). - Se vuoi eseguirlo in una nuova tab separata.
pjrunner roadmapPer scaricare l'ultima versione del codice dal repository:
pjrunner updateUna volta avviato un progetto, ti troverai all'interno di una sessione tmux. Ecco come muoverti:
- Passare alla tab successiva:
Ctrl + bseguito dan - Passare alla tab precedente:
Ctrl + bseguito dap - Scorrere i log: Usa semplicemente la rotella del mouse.
- Uscire (senza spegnere i server):
Ctrl + bseguito dad(detach). - Rientrare in una sessione:
tmux a -t nome_progetto.
Le configurazioni dei tuoi progetti sono salvate in:
~/.run_config.json
Puoi modificare questo file manualmente con VS Code o qualsiasi editor per cambiare percorsi o comandi senza dover rieseguire il comando add.
- Bash
- tmux (gestore di sessioni terminale)
- jq (processore JSON da riga di comando)
Realizzato con ❤️ per semplificare il workflow degli sviluppatori Linux.