trails - 一个 node.js 的现代 MVC Web 框架

Trails is a modern, community-driven web application framework for node.js. It builds on the pedigree of Rails and Grails to accelerate development by adhering to a straightforward, convention-based, API-driven design philosophy.

Getting Started


$ npm install -g generator-trails
$ yo trails


Trails uses Yeoman to generate scaffolding for new applications, and to create resources inside the application.

$ yo trails --help

  yo trails


  Create New Model
    yo trails:model 

  Create New Controller
    yo trails:controller 
       Create New Policy yo trails:policy 
        Create New Service yo trails:service 


Once installation is complete, begin your journey!

Happy Trails!


Trailpacks extend the framework’s capabilities and allow developers to leverage existing ecosystem tools through a simple and well-defined API. New features, behavior, APIs, and other functionality can be added to the Trails framework through Trailpacks.

Out of the box, Trails includes a small suite of trailpacks:


  • Windows, Mac, and Linux
  • Node 4.0 and newer


Q. Does Trails have a Roadmap?

Yes! We have a Trail Map that lays out our future plans and release schedule. Feel free to contribute your ideas.

Q. Why does Trails require Node 4+?

Trails is written entirely in ES6, and runs natively on Node without transpiling. If you’d like to use Trails on an older version of node, you can install babel and configure it to transpile your application into ES5.

Q. Is Trails compatible with Sails?

Trails can auto-migrate legacy Sails applications by installing the Sails Trailpack. We want this upgrade to be as smooth as possible, and are committed to maintaining it as a core module.

Q. Is Trails a fork of Sails?

No. Trails is built and maintained by former members of the Sails.js core team, and offers an upgrade path from existing Sails applications, but it utilizes exactly zero lines of code from the original Sails project.

Q. Can I use my own ORM, Webserver, whatever?

Yes! The core team maintains several popular trailpacks, but you are free to implement your own integration and use that instead or in addition to the core packs. See the Trailpack docs for more info.