@xpresser/router
TypeScript icon, indicating that this package has built-in type declarations

2.0.1 • Public • Published

XpresserJs Router

Router for Xpresser Framework!

Written in Typescript.

const XpresserRouter = require('@xpresser/router');
const Router = new XpresserRouter();

Router.get('/', 'Home@index');
Router.get('/profile', 'Home@profile').name('profile');

Router
    .path('/api', () => {
    
        Router.get('=auth');
        Router.post('=login');
        
        Router.get('@users');
        
        Router.path('user/:user', () => {
            
            Router.get('=view');
            Router.post('=update');
            
            Router.post('@ban');
            Router.delete('@delete');
            
        }).controller('UserApi').as('user').actionsAsName();

        Router.get('posts', 'PostApi@all').name('posts');
        
        Router.path('post/:post', () => {
            
            Router.get('@view');
            Router.delete('@delete');
            
            
        }).controller('PostApi').as('post').actionsAsName();
        
    }).as('api').controller('Api')
    
    // set Controller methods as name if no name exists.
    
    .actionsAsName();


module.exports = Router;
Method Path Controller Name
GET / HomeController@index
GET /profile HomeController@profile {profile}
GET /api ApiController@auth {api.auth}
POST /api ApiController@login {api.login}
GET /api/users ApiController@users {api.users}
GET /api/user/:user UserApiController@view {api.user}
POST /api/user/:user UserApiController@update {api.user}
POST /api/user/:user/ban UserApiController@ban {api.user.ban}
DELETE /api/user/:user/delete UserApiController@delete {api.user.delete}
GET /api/posts PostApiController@all {api.posts}
GET /api/post/:post/view PostApiController@view {api.post.view}
DELETE /api/post/:post/delete PostApiController@delete {api.post.delete}

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
2.0.14latest

Version History

VersionDownloads (Last 7 Days)Published
2.0.14
2.0.02
1.1.23
1.1.11
1.1.01
1.0.180
1.0.171
1.0.160
1.0.150
1.0.141
1.0.130
1.0.120
1.0.111
1.0.101
1.0.90
1.0.70
1.0.60
1.0.50
1.0.40
1.0.30
1.0.20
1.0.11
0.0.161
0.0.150
0.0.140
0.0.130
0.0.121
0.0.110
0.0.101
0.0.91
0.0.81
0.0.70
0.0.60
0.0.50
0.0.41
0.0.31
0.0.21
0.0.10

Package Sidebar

Install

npm i @xpresser/router

Weekly Downloads

1

Version

2.0.1

License

MIT

Unpacked Size

28.8 kB

Total Files

10

Last publish

Collaborators

  • trapcode