Become a sponsor to Ning Sun
To know my work better, you may want to checkout my projects below. Also I constantly contribute to various open source projects on Github.
Clojure Projects
Clojure is my top favourite programming language. I used to write Clojure as the primary language at LeanCloud. I still actively maintain these libraries to benefit the community. Some of them are widely used in open source and commercial projects.
- slacker and slacker-cluster: Clojure based RPC framework
- diehard Resillience library: retry, circuit breaker, rate limit, etc.
- stavka Configuration manager
- ring-jetty9-adapter An enhanced jetty adapter for Ring, with http/2 and websocket support built-in
- link Thin Netty wrapper for Clojure
- rigui Timing-wheels based timer for clojure
Rust Projects
I wrote my first rust project back in 2014 when it's in pre-1.0 state. Some of my libraries like handlebars and cargo-release are widely adopt by the community, powers a wide range of projects and their workflows.
- handlebars-rust Template engine for Rust, using the handlebars template lanaguage
- metriki Dropwizard metrics ported to Rust
- cargo-release
cargo release
- rustmann riemann client in Rust and Tokio
- geohash geohash implemented in Rust
Projects in other languages
- heatcanvas A heatmap library for browser
- node-geohash the mostly adopt geohash library (ngeohash) for node.
Featured work
-
sunng87/node-geohash
geohash library for nodejs
JavaScript 570 -
sunng87/ring-jetty9-adapter
An enhanced version of jetty adapter for ring, with additional features like websockets, http/2 and http/3
Clojure 275 -
sunng87/handlebars-rust
Rust templating with Handlebars
Rust 1,300 -
crate-ci/cargo-release
Cargo subcommand `release`: everything about releasing a rust crate.
Rust 1,355 -
sunng87/diehard
Clojure resilience library for flexible retry, circuit breaker and rate limiter
Clojure 334 -
sunng87/pgwire
PostgreSQL wire protocol implemented as a rust library.
Rust 535