Skip to content
API supporting the Bookmark Manager for Developers & Co
Branch: develop
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin first commit Oct 2, 2016
common start with integration testing (it version and root paths) Jan 20, 2019
models replace codingmark with bookmark in code Mar 18, 2019
resources/db-migration/mongodb add mongo command files, sort of migration scripts... Oct 22, 2017
routes replace "codingmark" with "bookmark" in code Mar 18, 2019
.editorconfig add .editorconfig file Oct 6, 2016
app.js replace "codingmark" with "bookmark" in code Mar 18, 2019
package.json prepare v3.0.0 for production Mar 14, 2019

API for, the Bookmark Manager for Developers & Co

This repo contains the back-end API source code of the website.

Bookmarks Context

This project is developed with the MEAN stack, featuring MongoDB, ExpressJS, Angular and NodeJS. Authentication and authorization is done via Keycloak:

Network Diagram

Development setup

You need mongodb, keycloak and nodejs to get the api working


What you need to run this app:

  • node and npm (we recommend using NVM)
  • Ensure you're running Node at least (v6.x.x+) and NPM (3.x.x+)


Follow the instructions from the Mongo DB documentation and install version 3.2 on your local machine. Connect to the mongo client:

# change to mongo installation directory

# run the mongo client
$ ./bin/mongo

and then create the codingpedia-bookmarks database:

# change to mongo installation directory
> use codingpedia-bookmarks

# verify that is present

> show dbs;
admin                  0.000GB
codingpedia-bookmarks  0.000GB
keycloak               0.001GB
local                  0.000GB


This is the heaviest step, we need to set up for development. But by using Keycloak we get lots of things like Single-Sign On, OpenId-Connect Support, social logins, user admin console, that otherwise would take lots of effort to implement by ourselves. To make our life easier, I have prepared a wiki page about Keycloak Setup For Development.

Installation and develop on local machine

# clone backend repo
$ git clone

# change directory to the app
$ cd bookmarks-api

# use the preconfigured node version
$ nvm use

# install the dependencies with npm
$ npm install

# start the server with nodemon, so that changes in the dynamically reflected
$ DEBUG=bookmarks-api:* nodemon start


Run the integration test by issuing the following command.

$ npm run integration-tests

For the tests to run the development environment has to be set up

Swagger docs



You can’t perform that action at this time.