Skip to content

nickel-org/nickel.rs

Folders and files

NameName
Last commit message
Last commit date
Aug 3, 2021
Aug 3, 2021
Aug 3, 2021
Nov 9, 2015
Sep 19, 2015
Jun 23, 2016
Aug 3, 2014
Feb 21, 2021
May 6, 2022
Jun 3, 2014
Feb 21, 2021
Sep 22, 2016
Feb 22, 2018

Repository files navigation

nickel.rs is a simple and lightweight foundation for web applications written in Rust. Its API is inspired by the popular express framework for JavaScript.

Hello world

#[macro_use] extern crate nickel;

use nickel::{Nickel, HttpRouter};

fn main() {
    let mut server = Nickel::new();
    server.get("**", middleware!("Hello World"));
    server.listen("127.0.0.1:6767");
}

Dependencies

You'll need to create a Cargo.toml that looks like this;

[package]

name = "my-nickel-app"
version = "0.0.1"
authors = ["yourname"]

[dependencies.nickel]
version = "*"
# If you are using the 'nightly' rust channel you can uncomment
# the line below to activate unstable features
# features = ["unstable"]

# Some examples require the `rustc_serialize` crate, which will
# require uncommenting the lines below
# [dependencies]
# rustc-serialize = "*"

You can then compile this using Cargo build and run it using Cargo run. After it's running you should visit http://localhost:6767 to see your hello world!

More examples

More examples can be found in the examples directory and the full documentation can be found here.

Contributing

nickel.rs is a community effort. We welcome new contributors with open arms. Please read the contributing guide here first.

If you're looking for inspiration, there's list of open issues right here on github.

If you need a helping hand reach out to @jolhoeft, @cburgdorf, @Ryman or @SimonPersson.

And hey, did you know you can also contribute by just starring the project here on github :)

Development Plan

Version Branch Description
0.11.x maint-0.11.x hyper-0.10.x (synchronous version), bug fixes only
0.12.x master hyper-0.14.x (asynchronous version)
0.13.x new features, possibly will be 1.0 instead