2. Projekte

2.1 Ein Projekt erstellen

Die drei Wege: ein leerer Ordner, ein Git-Repository oder eine Framework- oder CMS-Basis mit ihren Ergänzungen. Dazu deine GitHub-Repositorys.

In der App: «Neues Projekt»

Kurz gesagt

  • Ein Projekt ist einfach ein Ordner in projects: Das Kit erkennt ihn von selbst.
  • Es gibt drei Wege, eines zu erstellen: „Leeres Projekt“, „Von einer Git-Adresse“ und „Aus einer Basis“, mit den Basen von Frameworks und CMS in vier Gruppen: Web, CMS, App und Sonstiges. Dazu die Liste deiner GitHub-Repositorys.
  • Ein eigenes Projekt kann zur Basis werden: „Als Basis speichern“ auf seiner Seite, und du findest sie als Erstes unter „Meine Basen“.
  • Mit einem Framework installiert das Kit die benötigten Werkzeuge und führt die offiziellen Befehle des Frameworks aus.
  • Du kannst auch einen Ordner von Hand nach projects kopieren: Er erscheint nach „Aktualisieren“ in der Liste.
Der Ablauf „Aus einer Basis“Beispieldaten
Der Ablauf „Aus einer Basis“

Basis, Ergänzungen, Name, .env-Datei und Zusammenfassung untereinander. Links der Baum der drei Wege.

Wo du ein Projekt erstellst

Alle Wege führen zum Tab „Neues Projekt“ der Seite Projekte, der sich auf eine dieser Arten öffnet:

  • über die „Schnellübersicht“, unter „Neues Projekt“: oben rechts die Links „Leeres Projekt“ und „Von einer Git-Adresse“; darunter ein Block je Gruppe (Meine Basen, wenn du welche gespeichert hast, dann Web, CMS, App, Sonstiges) mit ihren Basen nach Kategorie: Ein Klick auf eine Basis öffnet den Assistenten mit dieser Basis bereits ausgewählt;
  • über die Symbole oben in der Seitenleiste: „Neues Projekt“ (Ordner mit Plus) und „Neues Projekt aus einer Basis“ (Zauberstab);
  • über den Bereich „Neues Projekt“ der Seitenleiste, einen Baum: „Leeres Projekt“, „Von einer Git-Adresse“, dann die Zweige Meine Basen (mit dem Stern, wenn du welche gespeichert hast), Web, CMS, App und Sonstiges mit der Anzahl der Basen. Unter Web, App und Sonstiges stehen die Kategorien und ihre Basen, unter CMS direkt die Basen; ein Klick auf eine Gruppe öffnet den Assistenten mit ihrer ersten Basis, ein Klick auf eine Basis öffnet ihn mit dieser Basis bereits ausgewählt;
  • über Ctrl+P, das am Ende der Liste die drei Einträge „Neues Projekt“ hat.

Ein erstelltes oder geklontes Projekt erscheint sofort auch auf der Seite „Webserver“.

Weg 1 · „Leeres Projekt“

Ein neuer, leerer Ordner in projects, den du nach Belieben füllst (auch durch Hineinkopieren von Dateien).

  1. Gib den Namen des Ordners in das Feld „Leer“ ein.
  2. Klicke auf „Erstellen“. Die Seite des neuen Projekts öffnet sich.

Der Name darf \ / : * ? " < > | nicht enthalten, nicht mit einem Punkt beginnen oder enden und kein reservierter Windows-Name sein (wie CON oder NUL). Wenn bereits ein Ordner mit diesem Namen existiert, sagt dir das Kit das.

Weg 2 · „Von einer Git-Adresse“

Kopiert (klont) ein bestehendes Git-Repository in einen Ordner in projects.

  1. Gib im ersten Feld owner/repository für ein GitHub-Repository ein (zum Beispiel laravel/laravel) oder die vollständige https://-Adresse eines beliebigen Git-Servers.
  2. Im zweiten Feld, optional, der Name des Ordners; wenn du es leer lässt, ist es der letzte Teil der Adresse.
  3. Klicke auf „Klonen“.

Nach dem Kopieren sieht sich das Kit die Dateien des Projekts an, installiert die benötigten Komponenten und wählt die Versionen, die das Projekt angibt (zum Beispiel die in .nvmrc eingetragene Node-Version oder die PHP-Version in composer.json), und lädt sie herunter, wenn sie fehlen.

Weg 3 · „Aus einer Basis“

Ein Assistent, der ein Projekt ausgehend von einer Basis (einem Framework wie Laravel, Django oder Vite, einem CMS wie WordPress, einem Website-Generator, einer Desktop- oder Mobil-App…) und von eventuellen Ergänzungen (Tailwind, React, eine Datenbank, Testwerkzeuge…) erstellt. Das Kit installiert die benötigten Werkzeuge und führt die offiziellen Befehle des Frameworks aus, dieselben, die du in seiner Dokumentation finden würdest.

SchrittWas du tust
1. BasisWähle eine Gruppe mit den Etiketten oben (Meine Basen, wenn du welche gespeichert hast, Web mit PHP, Web mit JavaScript und TypeScript, Web mit Python, Web mit anderen Sprachen, CMS, Statische Websites und Dokumentation, Desktop-App, Mobile App, Daten und Dokumente, Kommandozeile und Bibliotheken) und dann die Karte der Basis.
2. ErgänzungenKreuze die gewünschten Ergänzungen an. Sie sind nach Typ unterteilt (Oberfläche, Stile, Tests, Datenbanken…): Von jedem Typ wählst du nur eine, und die Wahl einer anderen ersetzt die erste.
3. NameGib den Namen des Projekts ein. Alternativ verwendest du ein bestehendes Projekt, das leer ist („leer“) oder Dateien, aber kein Git hat („mit Dateien“): Die Dateien des Frameworks kommen hinzu, und die vorhandenen bleiben, wie sie sind. Ein Git-Repository kann nicht verwendet werden.
4. Datei .envDie Variablen, die das Kit in die Datei .env des Projekts schreibt. {name} wird zum Namen des Projekts, {package} zu einer Kennung wie com.example.nome, {password} zu einem neuen Passwort. Du kannst die Werte ändern, Zeilen entfernen oder mit „Variable hinzufügen“ welche hinzufügen.
ZusammenfassungWas passieren wird: die Werkzeuge des Kits, die Datenbank des Projekts, die Befehle im Ordner projects, die im Projektordner und die Aktionen, die das Projekt haben wird.
  1. Prüfe die „Zusammenfassung“ und klicke auf „Projekt erstellen“.
  2. Im Teil „Fortschritt“ siehst du „Benötigte Werkzeuge des Kits werden installiert…“, dann „Befehl 1 von N“ mit der Ausgabe jedes Befehls.
  3. Am Ende erscheint „Projekt … erstellt.“ mit „Projekt öffnen“. Wenn ein Befehl fehlschlägt, hält der Assistent an und zeigt den Fehler.
  1. WerkzeugeInstalliert, was die Basis und die Ergänzungen verlangen (Node, PHP, Composer…).
  2. ErstellungFührt die Erstellungsbefehle im Ordner projects aus.
  3. DatenbankenFalls vorgesehen, erstellt es Datenbank und Benutzer und schreibt die Verbindung in .env.
  4. FeinschliffFührt die Schritte im Projektordner aus (Installationen, Migrationen).
  5. AktionenSpeichert die Aktionen des Rezepts in der Datei panel.json des Projekts.
Unter der Haube
  • Es wird jeweils ein Projekt erstellt. „Abbrechen“ während des Fortschritts beendet den laufenden Befehl.
  • Jede Zeile des Rezepts ist ein Befehl, der mit der PowerShell des Kits und der Umgebung des Kits ausgeführt wird, also mit den Versionen der Werkzeuge des Kits.
  • Wenn du ein bestehendes Projekt mit Dateien verwendest, wird das Framework in einem temporären Ordner des Systems erzeugt und dann ins Projekt verschoben: Die vorhandenen Dateien bleiben, und im Fortschritt erscheint „Schon im Projekt, unverändert gelassen“.
  • Wenn der Plan MySQL oder MongoDB vorsieht, startet das Kit den Server, erstellt Datenbank und Benutzer des Projekts und übergibt den Befehlen die Variablen ATOLLO_DB_HOST, ATOLLO_DB_PORT, ATOLLO_DB_NAME, ATOLLO_DB_USER, ATOLLO_DB_PASSWORD und ATOLLO_DB_URL. Das vom Kit erzeugte Passwort tritt an die Stelle eines leeren, das aus der Basis kommt (zum Beispiel DB_PASSWORD= in ihrer .env.example).
  • Am Ende fügt das Kit /.env zur Datei .gitignore hinzu, wenn es eine Datei .env gibt, die Git erfassen würde.
  • Die Aktionen des Rezepts kommen in die Datei panel.json des Projekts, mit einer Kennung, die mit fw- beginnt (zum Beispiel fw-avvia).
  • Manche Basen erfordern besondere Komponenten: Android-Apps brauchen die Komponente Android SDK; Laravel mit MongoDB braucht die PHP-Erweiterung mongodb, die das Kit nicht installiert.

„Meine Basen“

Ein eigenes Projekt kann zur Basis werden, um weitere gleiche zu erstellen: zum Beispiel ein Laravel mit deinen üblichen Paketen oder die Struktur eines Monorepos.

  1. Klicke auf der Seite des Projekts auf „Als Basis speichern“, in der Kopfzeile neben „Ordner öffnen“.
  2. Gib den Namen der Basis ein (anfangs der des Projekts) und, wenn du willst, eine Beschreibung.
  3. „Was kopiert wird“ enthält jeden Ordner und jede Datei im Stamm des Projekts, mit der Anzahl der Dateien und der Größe: Entferne das Häkchen bei denen, die du nicht willst. Darunter die Summe.
  4. Klicke auf „Als Basis speichern“: „Gespeichert: du findest sie unter Neues Projekt › Meine Basen. Derselbe Name ersetzt sie.“

Welche Dateien: in einem Git-Repository die, die Git behalten würde, also die verfolgten Dateien und die neuen, die .gitignore nicht ausschließt. Ohne Git alle außer den Ordnern ohne Quellen (node_modules, vendor, .venv, venv, target, dist, build und Ähnliche). Nie .env oder .env.local und die anderen Kopien, die die Passwörter enthalten: .env.example dagegen bleibt. Nie der Ordner .git.

Zum Verwenden: In „Neues Projekt“ ist die Gruppe „Meine Basen“ mit dem Stern die erste. Das Kit kopiert die Dateien der Basis in das neue Projekt, statt die Befehle eines Frameworks auszuführen, schreibt dann die .env, führt die Schritte aus und speichert die Aktionen wie bei den anderen Basen. Auch hier kannst du ein bestehendes Projekt verwenden, das leer ist oder Dateien, aber kein Git hat.

Unter der Haube
  • Die Dateien kommen nach data\frameworks\mine\<id>, wobei die id mine- gefolgt vom Namen in Kleinbuchstaben, Ziffern und Bindestrichen ist. Die Kopie wird nebenan erstellt und ersetzt dann die vorherige: Erneutes Speichern mit demselben Namen ersetzt Dateien und Basis.
  • Um eine Basis zu entfernen: Einstellungen, Anweisungen der Frameworks, „Entfernen“ bei der Basis; beim Speichern verschwindet auch ihr Ordner. Fehlt der Ordner, meldet das Erstellen eines Projekts „Der Ordner der Basis ist nicht mehr da: speichere sie erneut aus dem Projekt.“
  • Links und Junctions im Projekt werden nicht kopiert. Ohne Git wird auch der Ordner storage übersprungen: In einem Laravel ohne Git muss er mit den Schritten der Basis neu erstellt werden.

Deine GitHub-Repositorys

Wenn du das GitHub-Konto verbunden hast, listet der Bereich „Aus deinen GitHub-Repositorys“ der Seitenleiste deine Repositorys und die der Organisationen auf, denen du angehörst, nach Eigentümer gruppiert, mit einem Feld „Repositorys durchsuchen“.

  • „Klonen“ kopiert das Repository nach projects (in den Ordner mit seinem Namen oder Eigentümer-Name, wenn der Name schon vergeben ist). Ein bereits geklontes Repository hat seinen Namen in Grün und die Schaltfläche „Editor“.
  • „GitHub“ öffnet das Repository im Browser.
  • Ein Klick auf die Zeile öffnet die Details: privat oder öffentlich, Sprache, Sterne, letzter Push, wo es geklont ist, „Git-Adresse kopieren“ und, für Repositorys, die du verwaltest, „Umbenennen“ und „Von GitHub löschen“.