Misc.

murchinroom utils for everyone.

pyflowchart illustration

PyFlowchart

Convert Python code to flowcharts.

PyFlowchart implemented a Python bind to flowchart.js. You can import PyFlowchart as a library to define flowcharts in Python code, and generate flowchart.js language for rendering the diagrams.

It also come with a python AST parser to automatically generate flowcharts from input Python code.

crud illustration

crud

Create, Read, Update, Delete models with ease.

Crud is a golang package that helps writing CRUD servers. With this package, all you need is models, while all the rest is done for you automatically.

It requires only 32 lines of source code (include import statements) to make a RESTful API service with 13 endpoints.

emotext illustration

emotext

Emotions in Chinese Texts.

Emotional analysis of Chinese texts based on the emotion lexicon from DLUT, which maps Chinese words to emotions represented by 7 categories and 21 subcategories.

Input a string of Chinese text, emotext will return a TF-IDF weighted emotion distribution of the text.

The point of emotext is to keep it really simple, fast and cost-effective, compared to neural network based models.

ellipsis illustration

ellipsis

"truncate long utf-8 string with 省略号" -> "tr...略号"

Ellipsis is a Go package that provides functions to truncate long string with ellipsis (...).

This package offers three main functions to ellipsis a long string: Centering, Starting, and Ending. The functions are aware of UTF-8 characters ( especially for CJK characters, which take up multiple bytes to represent), and will not cut them in half.

configer illustration

configer

Read struct-defined configuration from file.

Configer is a go package helps you to read configuration files. Designed for small projects. Not heavy like Viper.

It simply reads configuration from a file (in JSON, YAML or TOML format) or some io.Reader, and bind the values into a struct instance.

See also: cdfmlr/slogconfig, a predefined configuration struct for log/slog.

smelt illustration

smelt

Filter & share markdown documents.

Smelt is a command-line tool for filtering specific Markdown documents based on their front-matter (the YAML metadata at the beginning of the Markdown files) and rsync (share) them from a directory tree to another.

Useful for managing a mono-repo of personal documents and sharing some of them with teammates or the public.

hind vs pish illustration

pish

Yet another naive container runtime for beginners.

Pish is a toy container runtime written in Python. Aiming to be simple and readable for beginners to understand what happens within linux containers.

See also: Hind is another toy container runtime written in Go, with a much over-engineered design.

smelt illustration

simplecipher

AES encrypting and decrypting for muggles.

Wrapping around the standard crypto/aes and crypto/cipher package, simplecipher provides a simple interface for encrypting and decrypting data using AES. Multiple block and stream modes are supported, including CBC, CFB, OFB, CTR and GCM.

Makes it easy to encrypt things with string-in, string-out functions, automatic key derivation (scrypt), automatic padding handling (PKCS7), and automatic ciphertext encoding (hex or base64), never panic on wrong input length again.

smelt illustration

matterof

markdown front-matter editor

matterof is a Rust library and CLI tool for reading, querying, modifying, and managing YAML front-matter in markdown files.

It supports complex queries, batch operations, atomic writes, and backup functionality.

You may also like

Other murchinroom open source repositories: