bocher / colmena-cms

🍯 Free and Open Source API and Admin powered by LoopBack and Angular

Home Page:https://colmena-cms.now.sh

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Colmena CMS

Free and Open Source API and Admin powered by LoopBack and Angular

All Contributors OpenCollective OpenCollective

TPFKALAA

This is a complete rewrite of The Project Formerly Known As Loopback Angular Admin.

Warning

This software is under 'active' development!

Please do not use it in production as-is.

Please refer to the Work in Progress section to find out what needs to be implemented to be production ready

About

Colmena CMS is a starter kit for an API with an Admin interface that can be easily extended and built upon.

Components

It is built using a collection of great Open Source projects, including but not limited to:

  • LoopBack v2.x - API server based on Express.
  • Angular v4.x + - MVC framework to build web apps.
  • Fireloop - Awesome Real-Time integration of Loopback and Angular.
  • CoreUI - Amazing Bootstrap Admin Template.

Installation

The project consists of 2 components, the API and the Admin interface.

Requirements

This project is built with node and therefore node (v6.x) and npm (v3.x) need to be available on your machine.

Additionally it uses p-s to run the project, which is recommended to be installed globally:

$ npm i -g p-s

Clone repo

First clone the repository to get the project files:

$ git clone https://github.com/colmena/colmena-cms
$ cd colmena-cms

Top-level directory

From inside the project dir (colmena-cms) run npm install:

$ npm install

This command should also trigger running npm install in the API and Admin directories using the npm postinstall step.

API (manual install of dependencies)

From inside the project dir (colmena-cms) enter the api directory and run npm install:

$ cd api
$ npm install

Admin (manual install of dependencies)

From inside the project dir (colmena-cms) enter the admin directory and run npm install:

$ cd admin
$ npm install

Development

Currently there is now way to build the project, it can only be run in development mode.

Running in development mode

From inside the project dir (colmena-cms) run INITDB=1 nps dev:

$ INITDB=1 nps dev

This will start the API and the Admin in the same terminal, and by using INITDB=1 the sample data will be loaded.

You can also start the two components separately:

Start the API

$ cd api
$ nps dev

Start the Admin

$ cd admin
$ nps dev

Running on other host than localhost

By default the development stack assumes that the API and Admin are both started on localhost (using 0.0.0.0).

When this is not the case, the admin needs to know on which IP address it can reach the API. In order to do this, you need to specify the api.baseUrl config property, which you can control using the API_BASE_URL environment variable.

$ API_BASE_URL=http://192.168.12.34:3000 nps dev

Make sure to leave out the trailing slash in the API_BASE_URL variable.

You should now be able to connect to the Admin on http://192.168.12.34:9000 and it should connect to the API.

More commands

For a list of all the commands available run nps in the project dir or in one of the components.

Work in Progress

Colmena CMS is still a work in progress and not all functionality is built yet.

  • Almost no ACLS are implemented, this means that the API can be used by whoever has access to it
  • There is no advanced user management
  • The interface does not reflect the user role (admin/manager/user)
  • Content will be leaking across domains, while this should not be possible

Known issues

npm WARN [dependency] requires a peer of @angular/[package] but none was installed.

This is a warning and can be safely ignored.

The reason this warning is shown is because Colmena CMS Admin uses Angular 4.x but depends on a couple of packages that expect Angular 2.x. This will be resolved when the dependencies are going to support Angular 4.

The <template> element is deprecated. Use <ng-template> instead

This is a warning and can be safely ignored.

In Angular 4 <template> got deprecated in favor of <ng-template>. While Colmena CMS Admin has upgraded, most of its dependencies still use <template>. This will be resolved when the dependencies are going to update this.

Contributors

Thanks goes to these wonderful people (emoji key):


Bram Borggreve

πŸ’¬ πŸ› πŸ’» 🎨 πŸ“– πŸ”§

Willian Ribeiro Angelo

πŸ’»

Nick Portokallidis

πŸ’»

drmikecrowe

πŸ’»

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

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!

Backers

Support us with a monthly donation and help us continue our activities. [Become a backer]

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

About

🍯 Free and Open Source API and Admin powered by LoopBack and Angular

https://colmena-cms.now.sh

License:MIT License


Languages

Language:TypeScript 90.6%Language:JavaScript 6.2%Language:HTML 2.8%Language:CSS 0.3%