Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/adhityaramadhanus/userland
userland api
https://github.com/adhityaramadhanus/userland
Last synced: 22 days ago
JSON representation
userland api
- Host: GitHub
- URL: https://github.com/adhityaramadhanus/userland
- Owner: AdhityaRamadhanus
- License: gpl-2.0
- Created: 2019-09-30T10:08:06.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-02-24T17:55:23.000Z (over 1 year ago)
- Last Synced: 2024-06-19T04:48:34.475Z (5 months ago)
- Language: Go
- Size: 8.44 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# userland
[![Go Report Card](https://goreportcard.com/badge/github.com/AdhityaRamadhanus/userland)](https://goreportcard.com/report/github.com/AdhityaRamadhanus/userland) [![Build Status](https://travis-ci.org/AdhityaRamadhanus/userland.svg?branch=master)](https://travis-ci.org/AdhityaRamadhanus/userland)
User Management API, based on https://userland.docs.apiary.io
Entities:
User
Event
SessionDatabase: postgres, redis
Authentication: JWS
Installation |
Usage |
License
Userland is account self-management, imaginary APIs that will include following near-real-world features:
- Registration
- Activation
- Authentication (with optional 2FA)
- Forgot and Reset Password
- Self Data ManagementManage Basic Info
- Manage Profile Picture
- Change Email
- Change Password
- Configure 2FA
- Self Session Management
- Manage Session
- Manage Refresh Token
- Manage Access Token
- Event Logging
- Self Delete
Installation (For Development)
-----------
* git clone
* set environtment variables in .env see (.env.sample)
* create database "userland" on postgres
* create database "userland_test" on postgres
* download migration cli
``` bash
(linux)
curl -L https://github.com/golang-migrate/migrate/releases/download/v4.1.0/migrate.linux-amd64.tar.gz | tar xvz
(mac Os)
curl -L https://github.com/golang-migrate/migrate/releases/download/v4.1.0/migrate.darwin-amd64.tar.gz | tar xvz
```
* run migration
``` bash
(linux)
./migrate.linux-amd64 -path storage/postgres/migration/ -database postgres://[user]:[pass]@localhost:5432?sslmode=disable up 2
(linux)
./migrate.darwin-amd64 -path storage/postgres/migration/ -database postgres://[user]:[pass]@localhost:5432?sslmode=disable up 2
```
* run build
```bash
make build-api
make build-mail
```
* run api and mailUsage
-----
* You can find postman collection in docs folderLicense
----MIT © [Adhitya Ramadhanus]