Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/wisdomfusion/api-dock

API Dock, a web application for managing and testing your APIs and docs, implemented using Python, Flask and Vue.js.
https://github.com/wisdomfusion/api-dock

flask python3 vuejs2

Last synced: about 2 months ago
JSON representation

API Dock, a web application for managing and testing your APIs and docs, implemented using Python, Flask and Vue.js.

Awesome Lists containing this project

README

        

# api-dock

**API Dock**, a web application for managing and testing your APIs and docs.

# INTRODUCTION

API Dock, a web application for managing and testing your APIs and docs, implemented using Python, Flask and Vue.js.

# Prerequisites

- Python 3.6.*

See `requirements/*.txt` and `client/package.json`.

# INSTALLATION

**Install `pip` and `virtualenv`**
```
# pip install -U pip
# pip install virtualenv
```

**Clone the application**
```
$ git clone [email protected]:WisdomFusion/api-dock.git
$ cd api-dock/
```

**Create Python virtual environment (Linux and macOS shell)**
```
$ virtualenv venv
$ source venv/bin/activate
```

**Create Python virtual environment (Windows cmd)**
```
$ python -m venv venv
$ venv\Scripts\activate.bat
$ python -m pip install -U pip
```

**Add `.env` file to application root folder**
```
APP_CONFIG=development
APP_URL=
APP_COVERAGE=1

SECRET_KEY=123456

# PostgreSQL connection
#SQLALCHEMY_DATABASE_URI=postgresql://:@[:]/
#SQLALCHEMY_DATABASE_TEST_URI=postgresql://:@[:]/

# MySQL connection using PyMySQL
#SQLALCHEMY_DATABASE_URI=mysql+pymysql://:@[:]/
#SQLALCHEMY_DATABASE_TEST_URI=mysql+pymysql://:@[:]/

# MySQL connection using PyMySQL via UNIX sock instead of port
SQLALCHEMY_DATABASE_URI=mysql+pymysql://:@/?unix_socket=
SQLALCHEMY_DATABASE_TEST_URI=mysql+pymysql://:@/?unix_socket=

# SQLite connection
#SQLALCHEMY_DATABASE_URI=sqlite:////db/
#SQLALCHEMY_DATABASE_TEST_URI=sqlite:////db/

CACHE_DRIVER=redis
SESSION_DRIVER=redis

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

JWT_SECRET_KEY=123456
JWT_TTL=60

APP_ROOT_ADMIN=sysop

USER_PER_PAGE=20
```
Modify placehold configurations above.

**Deploy the application**
```
$ pip install -r requirements.txt

$ mysql -u user -p
> create database apidb;
> create database apitestdb;
> \q

$ python run.py migrate
$ python run.py deploy
```

**Run the application**
```
$ python run.py runserver
```

# CONTRIBUTION

Fork the repo, commit your code or corrections, and request a PR. :)