falcon.swagger.yaml
Project description
# falsy
FAL.S.Y
### description
it's an api framework.
using falcon, swagger, yaml together!
### license
MIT and Apache v2
### showtime
![ScreenShot](https://raw.githubusercontent.com/pingf/falsy/master/demo.gif)
### how to install it
`pip install falsy`
### how to use it
0. create the dir for static
`mkdir static`
1. writting the server code(main.py)
```python
from falsy.falsy import FALSY
f = FALSY() #you need create the dir called static before you run
f.swagger('test.yml', ui=True, theme='impress') #impress theme is the responsive swagger ui, or you can use 'normal' here
api = f.api
```
2. writting the yml file
```
swagger: '2.0'
info:
title: FALSY SIMPLE DEMO API
version: "0.1"
consumes:
- application/json
produces:
- application/json
basePath: "/v1"
paths:
'/hello':
get:
tags: [Method]
operationId: demo.get_it
summary: testing
parameters:
- name: name
in: query
type: string
default: 'john'
responses:
200:
description: Return response
```
3. writting the operation handler(demo.py)
```python
def get_it(name):
return {
'get': name
}
```
4. run it
`gunicorn -b 0.0.0.0:8001 main:api --reload -w 1 --threads 1`
5. visit the ui page
`http://0.0.0.0:8001/v1/ui/`
make sure it ends with '/'
### video demo
![ScreenShot](https://raw.githubusercontent.com/pingf/falsy/master/falsy.gif)
### extensions
there some improvements compare to standard swagger,
you can define `operationId` for handler, 'beforeId' and 'afterId' for aop hooks,
and 'validationId' for validator, see the files in demo dir for details.
FAL.S.Y
### description
it's an api framework.
using falcon, swagger, yaml together!
### license
MIT and Apache v2
### showtime
![ScreenShot](https://raw.githubusercontent.com/pingf/falsy/master/demo.gif)
### how to install it
`pip install falsy`
### how to use it
0. create the dir for static
`mkdir static`
1. writting the server code(main.py)
```python
from falsy.falsy import FALSY
f = FALSY() #you need create the dir called static before you run
f.swagger('test.yml', ui=True, theme='impress') #impress theme is the responsive swagger ui, or you can use 'normal' here
api = f.api
```
2. writting the yml file
```
swagger: '2.0'
info:
title: FALSY SIMPLE DEMO API
version: "0.1"
consumes:
- application/json
produces:
- application/json
basePath: "/v1"
paths:
'/hello':
get:
tags: [Method]
operationId: demo.get_it
summary: testing
parameters:
- name: name
in: query
type: string
default: 'john'
responses:
200:
description: Return response
```
3. writting the operation handler(demo.py)
```python
def get_it(name):
return {
'get': name
}
```
4. run it
`gunicorn -b 0.0.0.0:8001 main:api --reload -w 1 --threads 1`
5. visit the ui page
`http://0.0.0.0:8001/v1/ui/`
make sure it ends with '/'
### video demo
![ScreenShot](https://raw.githubusercontent.com/pingf/falsy/master/falsy.gif)
### extensions
there some improvements compare to standard swagger,
you can define `operationId` for handler, 'beforeId' and 'afterId' for aop hooks,
and 'validationId' for validator, see the files in demo dir for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file falsy-2017.8.1.dev123-py3-none-any.whl
.
File metadata
- Download URL: falsy-2017.8.1.dev123-py3-none-any.whl
- Upload date:
- Size: 2.5 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4dd7d26a97531a5843d21af408b30261012efcf7d2f653bb7809dc2935b057aa |
|
MD5 | 258af32f3d4be6930e017868bb88e83c |
|
BLAKE2b-256 | 18e36396d2012cfd0f4a7bd57f434aee91020db0233f16b2bd55259ea6c8769f |