
Free and Open Source
Full Stack
RAPID API DEVELOPMENTColmena est un kit de démarrage pour une API avec une interface d'administration qui peut être facilement étendue et construite.
Il est construit en utilisant une collection de grands projets open source, y compris, mais sans s'y limiter:
Colmena est un travail en cours et toutes les fonctionnalités ne sont pas encore construites.
Le projet est un mono-repo géré par Lerna. Il est structuré comme ceci:
apps/admin l'interface d'administration construite avec Angular.api L'API REST construite avec Loopback.modules/admin-* qui ajoutent des fonctionnalités à l'application Admin.api-* qui ajoutent des fonctionnalités à l'application API.packages/admin-* utilisés par l'application admin.api-* utilisés par l'application API.La structure de ce projet est inspirée par ce excellent exemple: Oasisdicital / Scolable-Entrise-Angular.
node (v6.9.x ou supérieur).npm (v3.x ou supérieur). npm install -g @angular/cli lerna loopback-cliClone le référentiel et installer les dépendances:
git clone https://github.com/colmena/colmena
cd colmena
npm install
lerna bootstrapLorsque le projet s'exécute en mode développement, l'API et l'administrateur redémarrent automatiquement lorsqu'une modification de code est détectée.
De l'intérieur du projet DIR RUN npm run dev :
npm run devCela commencera à la fois l'API et l'administrateur dans le même terminal.
Vous pouvez également démarrer les deux composants séparément:
npm run dev:apinpm run dev:adminPendant le développement, il peut être utile de ramener le projet à un état propre. Pour faire cette course:
npm run clean && npm install && lerna bootstrap Vous pouvez configurer l'API en mode développement en créant un fichier local.yaml dans config . Le contenu de ce fichier n'est pas suivi par GIT, il ne vit donc que sur votre machine locale.
Pour démarrer avec les paramètres par défaut, copiez config/default.yaml à config/local.yaml .
L'API est livrée avec un ensemble d'échantillons de données pour le développement.
Pour charger les exemples de données lors du démarrage de la mise à jour de l'API local.yaml pour inclure:
system :
initdb : true Vous pouvez également utiliser la variable d'environnement INITDB .
Par défaut, la pile de développement suppose que l'API et l'administrateur sont tous deux démarrés sur LocalHost (en utilisant 127.0.0.1 ).
Afin d'exécuter l'API sur un autre hôte que localhost, l'administrateur doit savoir sur quelle adresse IP peut atteindre l'API. Pour ce faire, vous devez mettre à jour la propriété api.baseUrl Config.
Assurez-vous de configurer l'URL de base de l'API sans barre de barrage.
Pour définir la mise à jour de l'URL de base de l'API local.yaml pour inclure:
api :
# Do not use trailing spaces for the baseUrl
baseUrl : http://192.168.12.34:3000 Vous pouvez également utiliser la variable d'environnement API_BASE_URL .
Vous devriez maintenant pouvoir vous connecter à l'administrateur sur http://192.168.12.34:9000 et il devrait se connecter à l'API.
Colmena est livré avec une configuration Docker Compose pour exécuter facilement les serveurs de développement.
Pour utiliser la mise à jour du serveur MongoDB local.yaml pour inclure:
mongodb :
url : mongodb://localhost/colmena Vous pouvez également utiliser la variable d'environnement MONGODB_URL
Pour utiliser la mise à jour du serveur MailHog local.yaml pour inclure:
smtp :
host : localhost
port : 1025 Vous pouvez également utiliser les variables d'environnement SMTP_HOST et SMTP_PORT
npm run servers # or: npm run servers:start npm run servers:logsnpm run servers:stopnpm run servers:rmMerci à ces gens merveilleux (clé emoji):
Bram ? ? ? | Willian Ribeiro Angelo | Nick Portokallidis | drmikecrowe | Vladimir mechkauskas | Bernardo Arevalo | yieme |
|---|---|---|---|---|---|---|
Brian McIntyre | Rob Halff | Asgeir birkisson | dthib | Oleh Kukil | Pulkit Singhal | Tuan PM |
brun | 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 |
Ce projet suit les spécifications de tous les contributeurs. Contributions de toute nature bienvenue!
Soutenez-nous avec un don mensuel et nous aidez à poursuivre nos activités. [Devenez un bailleur de fonds]
Devenez sponsor et obtenez votre logo sur notre lecture sur GitHub avec un lien vers votre site. [Devenir sponsor]
Ce projet était autrefois connu sous le nom de Loopback Angular Admin.