项目作者: cauli

项目描述 :
Mulungu is a experimental service for creating and managing organizational charts, built in Go.
高级语言: Go
项目地址: git://github.com/cauli/mulungu.git
创建时间: 2019-02-02T17:53:08Z
项目社区:https://github.com/cauli/mulungu

开源协议:MIT License

下载




Mulungu

Build Status
Go Report Card

Mulungu is a service for creating and managing organizational charts, built in Go.

Features

  • Easy API to manage charts and employees
  • Low memory consumption due to the usage of memory pointers
  • Fast operations, even with many nodes
  • Uses memory cache by default

Running the server

To run the server:

  1. $ docker-compose up

When everything is ready, your server will be accessible via localhost:8080

API Overview

resource method description
/chart/:chartId GET Retrieves a JSON structure with the whole chart hierarchy
/chart/:chartId PUT Inserts a new chart with id :chartId. By default, a root node is inserted.
/chart/:chartId DELETE Removes :chartId completely
/chart/:chartId/employee/:employeeId PUT Inserts an employee to :chartId, or updates its info (including leader)
/chart/:chartId/employee/:employeeId/subordinates GET Retrieves a JSON structure containing all subordinates of :employeeId

A Postman documentation and a Postman collection are provided with full examples of requests and responses.

Tests

This project uses Behavior Specifications tests, in BDDish style.

To run the tests:

  1. $ docker-compose run mulungu go test -v ./...



What is the meaning of the name Mulungu?

Erythrina Mulungu is a native brazilian tree with a distinct red flowers, and an interesting branching pattern.