A high performance full-stack Web framework.


Keywords
library, web, framework, dlang, full-stack, http2, microservice, mvc, orm, restful-api, template-engine, web-framework, webservice, websocket
License
Apache-2.0
Install
dub fetch hunt-framework --version 2.2.11

Documentation

Build Status

Hunt framework

Hunt is a high-level D Programming Language Web framework that encourages rapid development and clean, pragmatic design. It lets you build high-performance Web applications quickly and easily.

Documents

Start read hunt framework wiki for documents.

Create project

git clone https://github.com/huntlabs/hunt-skeleton.git myproject
cd myproject
dub run -v

Open the URL with the browser:

http://localhost:8080/

Router config

config/routes

#
# [GET,POST,PUT...]    path    controller.action
#

GET     /               index.index
GET     /users          user.list
POST    /user/login     user.login
*       /images         staticDir:public/images

Controller example

module app.controller.index;

import hunt.framework;

class IndexController : Controller
{
    mixin MakeController;

    @Action
    string index()
    {
        return "Hello world!";
    }
}

View hunt-skeleton or hunt-examples.

Components

  1. Routing
  2. Caching
  3. Middleware
  4. Configuration
  5. Validation
  6. Entity & Repository
  7. Form
  8. Template Engine
  9. Task Worker
  10. Security
  11. WebSocket (with STOMP)

Additional package dependencies

package version purpose
hunt-trace 0.2.0 above Tracing for API requests
hunt-security 0.2.0 above Some core APIs for security

Note: To support request tracing, you must add these packages to your project:

  1. hunt-trace

To support SSL, you must add these packages to your project:

  1. hunt-security
  2. boringssl or openssl

Community

QQ Group: 184183224

Github

For Chinese users

D语言中文社区