
Free and Open Source
Full Stack
RAPID API DEVELOPMENTColmena ist ein Starter -Kit für eine API mit einer Admin -Schnittstelle, die leicht verlängert und aufgebaut werden kann.
Es wird mit einer Sammlung großartiger Open -Source -Projekte gebaut, einschließlich, aber nicht beschränkt auf:
Colmena ist in Arbeit und noch nicht alle Funktionen sind aufgebaut.
Das Projekt ist ein von Lerna verwaltetes Mono-Repo. Es ist so strukturiert:
apps/admin die mit Angular erstellte Admin -Schnittstelle.api Rest -API mit Loopback.modules/admin-* Module, die der Admin-App Funktionalität hinzufügen.api-* Module, die der API-App Funktionalität hinzufügen.packages/admin-* Pakete, die von der Admin-App verwendet werden.api-* Pakete, die von der API-App verwendet werden.Die Struktur dieses Projekts ist von diesem großartigen Beispiel inspiriert: Oasisdigital/skalierbarer Einflusswinkel.
node (v6.9.x oder höher).npm (v3.x oder höher). npm install -g @angular/cli lerna loopback-cliKlonen Sie das Repository und installieren Sie die Abhängigkeiten:
git clone https://github.com/colmena/colmena
cd colmena
npm install
lerna bootstrapWenn das Projekt im Entwicklungsmodus ausgeführt wird, wird die API und der Administrator automatisch neu gestartet, wenn eine Codeänderung erkannt wird.
Aus dem Projekt Dir Run npm run dev :
npm run devDies startet sowohl die API als auch den Administrator im selben Terminal.
Sie können auch die beiden Komponenten separat starten:
npm run dev:apinpm run dev:adminWährend der Entwicklung kann es nützlich sein, das Projekt in einen sauberen Zustand zurückzubringen. Um diesen Lauf zu machen:
npm run clean && npm install && lerna bootstrap Sie können die API im Entwicklungsmodus konfigurieren, indem Sie eine local.yaml -Datei in config erstellen. Der Inhalt dieser Datei wird von Git nicht verfolgt, sodass sie nur auf Ihrer lokalen Maschine lebt.
Um mit den Standardeinstellungen zu beginnen, kopieren Sie config/default.yaml auf config/local.yaml .
Die API verfügt über eine Reihe von Beispieldaten für die Entwicklung.
So laden Sie die Beispieldaten beim Starten der API -Aktualisierung local.yaml um Folgendes zu enthalten:
system :
initdb : true Sie können auch die INITDB -Umgebungsvariable verwenden.
Standardmäßig geht der Entwicklungsstapel davon aus, dass die API und die Administrator beide auf Localhost (unter Verwendung von 127.0.0.1 ) gestartet werden.
Um die API auf einem anderen Host auszuführen als Localhost, muss der Administrator wissen, über welche IP -Adresse die API erreichen kann. Dazu müssen Sie die api.baseUrl -Konfigurationseigenschaft aktualisieren.
Stellen Sie sicher, dass Sie die API -Basis -URL ohne nachverfolgende Schrägstrich konfigurieren.
So setzen Sie die API -Basis -URL -Aktualisierung local.yaml ein, um Folgendes zu enthalten:
api :
# Do not use trailing spaces for the baseUrl
baseUrl : http://192.168.12.34:3000 Sie können auch die Umgebungsvariable API_BASE_URL verwenden.
Sie sollten nun in der Lage sein, eine Verbindung zum Administrator unter http://192.168.12.34:9000 herzustellen, und es sollte eine Verbindung zur API herstellen.
Colmena wird mit einer Docker -Komponierungskonfiguration für die Ausführung von Entwicklungsservern problemlos geliefert.
Verwenden Sie den MongoDB Server -Update local.yaml , um zu enthalten:
mongodb :
url : mongodb://localhost/colmena Sie können auch die Umgebungsvariable MONGODB_URL verwenden
Um den MailHog Server -Aktualisieren local.yaml zu verwenden, um zu enthalten:
smtp :
host : localhost
port : 1025 Sie können auch die Umgebungsvariablen SMTP_HOST und SMTP_PORT verwenden
npm run servers # or: npm run servers:start npm run servers:logsnpm run servers:stopnpm run servers:rmVielen Dank an diese wunderbaren Menschen (Emoji -Schlüssel):
Bram Borgreve ? ? ? | Willian Ribeiro Angelo | Nick Portokallidis | drmikecree | Vladimir Mechkauskas | Bernardo Arevalo | yieme |
|---|---|---|---|---|---|---|
Brian McIntyre | Rob Halff | Asgeir Birkisson | DTHIB | Oleh Kukil | Pulkit Singhal | Tuan PM |
Brownman | Hoàng Phúc | Brian Dunnette | Chenzc | Tersius Kuhne | Alex Quiambao | José Luis di Biase |
Shing. | Alex Wilde | DMTW | Marcus | Brannon N. Darby II. | Sebastian Podgajny | Iscaster |
Dieses Projekt folgt der All-Contributors-Spezifikation. Beiträge jeglicher Art willkommen!
Unterstützen Sie uns mit einer monatlichen Spende und helfen Sie uns, unsere Aktivitäten fortzusetzen. [Backer werden]
Werden Sie Sponsor und holen Sie sich Ihr Logo auf unserem Readme auf GitHub mit einem Link zu Ihrer Website. [Sponsor werden]
Dieses Projekt war früher als Loopback Angular Admin bekannt.