Here are some of my side projects.

Robotics and Computer Vision


Github | PyPI | Docs

RoboMasterPy is a Python library and framework for RoboMaster EP, a DJI educational robot. The framework deals with video streaming, push and event, provides a high-level interface for controlling and communication. You can build your controlling logic basing on it.

With help of tools like OpenCV, I made some work that might interest you.


O’RLY Cover Generator

Website | Github | Fun Examples

O’RLY Cover Generator is a parody book cover generator, implemented in Golang and Vue.js, supporting a wide range of languages including CJK.

I started O’RLY for three reasons:

  • Fun;
  • Pioneer like’s does not support languages other than English;
  • I saw little Go’s projects on graphics and typesetting, so it’s worth a try.

Middleware and Libraries

Golang gzip Middleware

Github |

A dull gzip middleware for Gin and net/http.

A gzip middleware is so common, fundamental and dull in almost every web framework that I thought implementing one should be easy. However, there are actually some details need to be taken care of:

  • does the client support uncompress?
  • which kinds of contents should be compressed? by MIME or file extension?
  • is the stream compressed already?
  • how many bytes does it make meaningful to do compression?
  • which gzip level to take?
  • how to decide the payload size when streaming?

I learned a lot when implementing this project.

Golang Etherscan API client

Github |

Go bindings to the API, with nearly Full implementation(accounts, transactions, tokens, contracts, blocks, stats), full network support(Mainnet, Ropsten, Kovan, Rinkby, Tobalaba), and only depending on standard library.


See Github.