Requirements
- Ability to match static routes
GET /foo/bar
['GET /foo/bar']
- Ability to match a single step in a route
POST /users/{userId}/edit
orPOST /users/{userId:*/}edit
['POST /users/', match('userId', '*/'), '/edit']
- Ability to wildcard the ending of a route
GET /static/{filename:*}
['GET /static/', match('filename', '*')]
- Ability to make the last route step optional
GET /users{userId?:/*/}
['GET /users']
and