docs: 📝 Aggiornata documentazione

- Aggiunto CONTRIBUTING.md con informazioni sugli strumenti utili per lo sviluppatore che contribuisce al progetto
- Aggiunte opzioni di installazione senza dipendenze/pacchetti di sviluppo nel README.md
- Aggiustata formattazione del README.md
This commit is contained in:
Maicol Battistini 2021-10-13 15:04:47 +02:00
parent f5b01779ad
commit 4e9e5f6eb6
No known key found for this signature in database
GPG Key ID: 4FDB0F87CDB1D34A
2 changed files with 97 additions and 23 deletions

50
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,50 @@
Per contribuire al progetto e quindi implementare nuove funzionalità, migliorare quelle esistenti o risolvere problemi,
è necessario installare alcuni software sul proprio PC e seguire le indicazioni riportate in questo documento.
## Strumenti necessari
- [PHP](https://php.net)
- [Composer](https://getcomposer.org)
- [PNPM](https://pnpm.io/it)
- IDE o editor di testo intelligente:
- [PHPStorm](https://jetbrains.com/phpstorm)* (consigliato)
- [VS Code](https://code.visualstudio.com/)
- Altro editor di testo intelligente
- Plugin PHPStorm (consigliati, **solo se** si è scelto PHPStorm sopra):
- [.env files support](https://plugins.jetbrains.com/plugin/9525--env-files-support)
- [.ignore](https://plugins.jetbrains.com/plugin/7495--ignore)
- [collector](https://plugins.jetbrains.com/plugin/15246-collector)
- [deep-assoc-completion](https://plugins.jetbrains.com/plugin/9927-deep-assoc-completion)
- [deep-js-completion](https://plugins.jetbrains.com/plugin/11478-deep-js-completion)
- [GitToolBox](https://plugins.jetbrains.com/plugin/7499-gittoolbox)
- [InertiaJS support](https://plugins.jetbrains.com/plugin/17435-inertia-js-support) (non installare se si sceglie il
plugin Laravel Idea)
- [Laravel Idea](https://plugins.jetbrains.com/plugin/13441-laravel-idea)*
- [Laravel Make Integration](https://plugins.jetbrains.com/plugin/14612-laravel-make-integration)
- [Laravel Tinker](https://plugins.jetbrains.com/plugin/14957-laravel-tinker) (opzionale, però può essere utile)
- [Open in Github](https://plugins.jetbrains.com/plugin/7190-open-in-github)
- [PHP Advanced Autocomplete](https://plugins.jetbrains.com/plugin/7276-php-advanced-autocomplete)
- [PHP Inspections (EA Ultimate)](https://plugins.jetbrains.com/plugin/16935-php-inspections-ea-ultimate-)*
- [PHP ToolBox](https://plugins.jetbrains.com/plugin/8133-php-toolbox)
*Nota*: Gli strumenti contrassegnati da `*` sono a pagamento. È disponibile una licenza gratuita presso lo
sviluppatore dello strumento per studenti e progetti open-source
## Preparazione del progetto dal repo di Github
1. Eseguire i seguenti comandi:
```bash
composer install
pnpm install
php artisan key:generate
php artisan migrate
php artisan vendor:publish
```
2. Avviare il server di sviluppo:
```bash
pnpm serve-dev
```

View File

@ -24,10 +24,13 @@
[![license](https://img.shields.io/github/license/devcode-it/openstamanager.svg)](https://github.com/devcode-it/openstamanager/blob/master/LICENSE)
[![huntr](https://cdn.huntr.dev/huntr_security_badge_mono.svg)](https://huntr.dev)
Il gestionale OpenSTAManager è un software open-source e web based, sviluppato dall'azienda informatica [DevCode](https://www.devcode.it/) di Este per gestire ed archiviare il servizio di assistenza tecnica e la relativa fatturazione.
Il nome del progetto deriva dalla parziale traduzione in inglese degli elementi principali che lo compongono: la natura open-source e il suo obiettivo quale Gestore del Servizio Tecnico di Assistenza.
Il gestionale OpenSTAManager è un software open-source e web based, sviluppato dall'azienda
informatica [DevCode](https://www.devcode.it/) di Este per gestire ed archiviare il servizio di assistenza tecnica e la
relativa fatturazione. Il nome del progetto deriva dalla parziale traduzione in inglese degli elementi principali che lo
compongono: la natura open-source e il suo obiettivo quale Gestore del Servizio Tecnico di Assistenza.
Un software gestionale, identificato nell'insieme degli applicativi che automatizzano i processi di gestione all'interno delle aziende, appartiene solitamente a una specifica categoria del settore, specializzata negli ambiti di:
Un software gestionale, identificato nell'insieme degli applicativi che automatizzano i processi di gestione all'interno
delle aziende, appartiene solitamente a una specifica categoria del settore, specializzata negli ambiti di:
- Gestione della contabilità;
- Gestione del magazzino;
@ -35,7 +38,9 @@ Un software gestionale, identificato nell'insieme degli applicativi che automati
- Gestione e previsione dei budget aziendali;
- Gestione ed analisi finanziaria.
Secondo questa definizione, OpenSTAManager riesce a generalizzare al proprio interno le funzionalità caratteristiche della contabilità e della gestione del magazzino, presentando inoltre moduli piuttosto avanzati e destinati a complementare l'attività aziendale in relazione agli interventi di assistenza della realtà lavorativa in oggetto.
Secondo questa definizione, OpenSTAManager riesce a generalizzare al proprio interno le funzionalità caratteristiche
della contabilità e della gestione del magazzino, presentando inoltre moduli piuttosto avanzati e destinati a
complementare l'attività aziendale in relazione agli interventi di assistenza della realtà lavorativa in oggetto.
La documentazione ufficiale è disponibile all'indirizzo <https://docs.openstamanager.com/>.
@ -82,52 +87,69 @@ Per procedere all'installazione è necessario seguire i seguenti punti:
release scaricata. Il percorso della cartella root del server varia in base al software in utilizzo:
- LAMP (`/var/www/html`)
- XAMPP (`C:/xampp/htdocs` per Windows, `/opt/lampp/htdocs/` per Linux, `/Applications/XAMPP/htdocs/` per MAC)
- WAMP (`C:\wamp\www`)
- MAMP (`C:\MAMP\htdocs` per Windows, `/Applications/MAMP/htdocs` per MAC)
- XAMPP (`C:/xampp/htdocs` per Windows, `/opt/lampp/htdocs/` per Linux, `/Applications/XAMPP/htdocs/` per MAC)
- WAMP (`C:\wamp\www`)
- MAMP (`C:\MAMP\htdocs` per Windows, `/Applications/MAMP/htdocs` per MAC)
3. Creare un database vuoto (tramite [PHPMyAdmin](http://localhost/phpmyadmin/) o riga di comando).
4. Accedere a <http://localhost/openstamanager> dal vostro browser.
5. Inserire i dati di configurazione per collegarsi al database.
6. Procedere all'installazione del software, cliccando sul pulsante **Installa**.
**Attenzione**: è possibile che l'installazione richieda del tempo. Si consiglia pertanto di attendere almeno qualche minuto senza alcun cambiamento nella pagina di installazione (in particolare, della progress bar presente) prima di cercare una possibile soluzione nelle discussioni del forum o nella sezione dedicata.
**Attenzione**: è possibile che l'installazione richieda del tempo. Si consiglia pertanto di attendere almeno qualche
minuto senza alcun cambiamento nella pagina di installazione (in particolare, della progress bar presente) prima di
cercare una possibile soluzione nelle discussioni del forum o nella sezione dedicata.
### Versioni
Per mantenere un elevato grado di trasparenza riguardo al ciclo delle release, seguiamo le linee guida [Semantic Versioning (SemVer)](https://semver.org/) per definire le versioni del progetto.
Per vedere tutte le versioni disponibili al download, visitare la [pagina relativa](https://github.com/devcode-it/openstamanager/releases) su GitHub (per versioni precedenti alla 2.3, visitare [SourceForge](https://sourceforge.net/projects/openstamanager/files)).
Per mantenere un elevato grado di trasparenza riguardo al ciclo delle release, seguiamo le linee
guida [Semantic Versioning (SemVer)](https://semver.org/) per definire le versioni del progetto. Per vedere tutte le
versioni disponibili al download, visitare la [pagina relativa](https://github.com/devcode-it/openstamanager/releases)
su GitHub (per versioni precedenti alla 2.3,
visitare [SourceForge](https://sourceforge.net/projects/openstamanager/files)).
Nel caso utilizziate il programma per uso commerciale, si consiglia di scaricare le release disponibili nel sito ufficiale del progetto (<https://www.openstamanager.com>), evitando di utilizzare direttamente il codice della repository.
Se siete inoltre interessati a supporto e assistenza professionali, li potete richiedere nella [sezione dedicata](https://www.openstamanager.com/per-le-aziende/).
Nel caso utilizziate il programma per uso commerciale, si consiglia di scaricare le release disponibili nel sito
ufficiale del progetto (<https://www.openstamanager.com>), evitando di utilizzare direttamente il codice della
repository. Se siete inoltre interessati a supporto e assistenza professionali, li potete richiedere
nella [sezione dedicata](https://www.openstamanager.com/per-le-aziende/).
### GitHub
Nel caso si stia utilizzando la versione direttamente ottenuta dalla repository di GitHub, è necessario eseguire i seguenti comandi da linea di comando per completare le dipendenze PHP (tramite [Composer](https://getcomposer.org)) e gli assets (tramite [PNPM](https://pnpm.js.org/)) del progetto.
Nel caso si stia utilizzando la versione direttamente ottenuta dalla repository di GitHub, è necessario eseguire i
seguenti comandi da linea di comando per completare le dipendenze PHP (tramite [Composer](https://getcomposer.org)) e
gli assets (tramite [PNPM](https://pnpm.io/it)) del progetto.
```bash
php composer.phar install
pnpm install
pnpm run build
composer install --no-dev
pnpm install --prod
pnpm build
php artisan key:generate
php artisan migrate
php artisan vendor:publish
```
Per ulteriori informazioni, visitare le sezioni [Assets](https://docs.openstamanager.com/docs/base/assets) e [Framework](https://docs.openstamanager.com/docs/base/framework) della documentazione.
Per ulteriori informazioni, visitare le sezioni [Assets](https://docs.openstamanager.com/docs/base/assets)
e [Framework](https://docs.openstamanager.com/docs/base/framework) della documentazione.
## Perché software open-source
Il progetto è un software open-source perché permette agli utilizzatori di studiarne il funzionamento ed adattarlo alle proprie esigenze; inoltre, in ambito commerciale, non obbliga l'utilizzatore ad essere legato allo stesso fornitore di assistenza.
Il progetto è un software open-source perché permette agli utilizzatori di studiarne il funzionamento ed adattarlo alle
proprie esigenze; inoltre, in ambito commerciale, non obbliga l'utilizzatore ad essere legato allo stesso fornitore di
assistenza.
In questo modo è possibile ottenere un'ulteriore garanzia sul funzionamento del software, poiché chiunque ne abbia le capacità può verificarlo, escludendo mancanze in relazione alla sicurezza e alla privacy dei dati (caratteristica che il software proprietario non può offrire).
In questo modo è possibile ottenere un'ulteriore garanzia sul funzionamento del software, poiché chiunque ne abbia le
capacità può verificarlo, escludendo mancanze in relazione alla sicurezza e alla privacy dei dati (caratteristica che il
software proprietario non può offrire).
## Community
La community è una componente importante in un progetto open-source, perché mette in contatto utenti e programmatori tra di loro e permette pertanto l'individuazione di soluzioni innovative e migliori.
La community è una componente importante in un progetto open-source, perché mette in contatto utenti e programmatori tra
di loro e permette pertanto l'individuazione di soluzioni innovative e migliori.
Siamo presenti su [Facebook](https://www.facebook.com/openstamanager), e il nostro forum ufficiale è disponibile all'indirizzo <https://forum.openstamanager.com>, dove potete segnalare i vostri problemi e soddisfare le vostre curiosità nelle sezioni più adeguate:
Siamo presenti su [Facebook](https://www.facebook.com/openstamanager), e il nostro forum ufficiale è disponibile
all'indirizzo <https://forum.openstamanager.com>, dove potete segnalare i vostri problemi e soddisfare le vostre
curiosità nelle sezioni più adeguate:
- [Idee, suggerimenti e consigli](https://forum.openstamanager.com/viewforum.php?f=1)
- [Problemi con la prima installazione](https://forum.openstamanager.com/viewforum.php?f=2)
@ -135,11 +157,13 @@ Siamo presenti su [Facebook](https://www.facebook.com/openstamanager), e il nost
- [Altro tipo di assistenza](https://forum.openstamanager.com/viewforum.php?f=4)
- [Tutorial](https://forum.openstamanager.com/viewforum.php?f=5)
**Attenzione**: vi ricordiamo che non vi è nessuna garanzia che qualcuno risponda in tempo alle vostre richieste o problemi.
**Attenzione**: vi ricordiamo che non vi è nessuna garanzia che qualcuno risponda in tempo alle vostre richieste o
problemi.
## Contribuire
Per poter contribuire ed eseguire i test automatici, si consiglia di seguire le indicazioni descritte all'interno della [documentazione ufficiale](https://github.com/devcode-it/openstamanager/blob/master/.github/CONTRIBUTING.md).
Per poter contribuire ed eseguire i test automatici, si consiglia di seguire le indicazioni descritte all'interno
della [documentazione ufficiale](https://github.com/devcode-it/openstamanager/blob/master/.github/CONTRIBUTING.md).
## Licenza