Per creare un nuovo progetto all'interno dello SharePoint Framework, basta creare una nuova cartella, aprire la command line e digitare:

C:\project folder\> yo @microsoft/sharepoint
Yeoman (yo) vi chiederà qualche informazione in più per la creazione del progetto e poi partirà con le sue operazioni automatiche.




Una volta completate le operazioni, potete aprire il progetto con il vostro IDE di sviluppo preferito. Vi troverete di fronte ad una struttura di cartelle e file ben precisa.
Vediamo nel dettaglio le parti più importanti:
  • /config - E' la cartella dove sono presenti i file di configurazione della soluzione. E' possibile trovare al suo interno i seguenti file:
    - config.json, utile alla definizione dell'entry point delle tue web part, delle referenze delle librerie esterne e dei file con le stringhe di localizzazione.
    - package-solution.json, utile alla definizione del nome della soluzione, del suo ID e del nome del file .spapp
    - deploy-azure-storage.json, utile a definire i parametri per il deploy su Azure della tua web part per il rilascio in produzione.
    -  write-manifest.json, utile a definire il percorso dei file della propria web part hostati su un CDN
  • /node-modules - E' la cartella in cui vengono salvate tutte le librerie referenziate dalla soluzione. Non è necessario gestire a mano queste librerie, c'è l'utility NPM che lo fa per voi.
  • /sharepoint - E' la cartella che conterrà il file .spapp (di test o di produzione) da installare su SharePoint.
  • /src - E' la cartella con contiene i sorgenti della tua soluzione (quindi per ora le tue Client Side Web Part).
  • package.json - E' il file di definizione delle versioni delle librerie referenziate all'interno della soluzione.
Il resto delle cartelle e dei file non sono meno importanti, ma non sono di uso quotidiano quindi ho preferito non parlarvene. Vedremo molti di esse nei prossimi post.

Nota bene: questa struttura è soggetta a cambiamento, essendo lo SharePoint Framework attualmente in versione preview e in continua evoluzione.