Smithy is an admin dashboard written in Go and VueJS. It is designed to support multiple existed architectures and databases
Clone or download
phanletrunghieu [Feature] Move user group permission to PG db (#69)
- [x] add crud user, group service
- [x] add group service
- [x] update auto migrate
- [x] move user to pg
- [x] authenticate by group
- [x] update test
- [x] update travis
- [x] allow admin update permission
- [x] test: only role "admin" can crud group, user, permission
- [x] hash password by bcrypt
- [x] update readme
- [x] add vendor
Latest commit 193f563 Oct 24, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github add pull request template Aug 22, 2018
agent
backend
cmd
common
doc
swaggerui
vendor
.env.example
.gitignore
.travis.yml
Gopkg.lock
Gopkg.toml
LICENSE Initial commit Aug 6, 2018
README.md
docker-compose-dashboard.yaml
docker-compose.yaml
example_agent_config.yaml
example_dashboard_config.yaml
makefile

README.md

Smithy Backend [WIP]

Smithy is an admin dashboard written in Go. It is designed to support multiple existed architectures and databases.

Table of Contents

  • Prerequisites
  • Installation
  • Quick start

Prerequisites

Disclaimer: smithy works best on macOS and Linux.

  • git should be installed
  • docker and docker-compose must been installed
  • golang version >= 1.10

Basic Installation

Manual Installation

1. Clone the repository

git clone https://github.com/dwarvesf/smithy

2. Load environment variables

make local-env

3. Build

make build

4. Start database or clear data and permisstion

make local-db

5. Start agent ( PORT 3000 )

make up-agent

6. Set permission for each table

bin/smithy generate user

Note: If user existed. Try it

bin/smithy generate user -f

6. Start dashboard ( PORT 2999 )

make up-dashboard

This command will generate groups, users in database:

Default: username: admin password: admin

Note: From here. You just need make up-dashboard to start server. Because agent's data have been saved into your local PC

Quick start

Start swagger API

http://localhost:2999/swaggerui/

Note: You need to follow step by step on swagger interface

Step 1: Login

When you enter your username and password to login. You will get a token.

Step 2: Fill your token into the header

Authorization : BEARER "your token here"

Step 3: Synchronized

Run agent-sync endpoint to sync agent's data for dashboard

Step 4: Run

Run CRUD, config version with available form