Rust Encoding

Open-source Rust projects categorized as Encoding

Top 23 Rust Encoding Projects

  • serde

    Serialization framework for Rust

    Project mention: How difficult is it to rewrite moderately templated C++17 code into rust? | reddit.com/r/rust | 2023-03-21

    The major point of difference will be that Rust doesn't yet have generic variadics, so you'd need to find a different way to express structured heterogeneous data. I recommend checking out serde serialization for some inspiration on this.

  • json

    Strongly typed JSON library for Rust (by serde-rs)

    Project mention: Post For Rust Class | reddit.com/r/lol | 2023-01-15
  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • bincode

    A binary encoder / decoder implementation in Rust.

    Project mention: Convert a base-64 encoded, serialised, Rust struct to a Python class | reddit.com/r/rust | 2023-03-06

    One, figure out the bincode format (documented here: https://github.com/bincode-org/bincode/blob/trunk/docs/spec.md) and write your own parser. Maybe a one-off that specifically only handles this one data structure would be fairly straightforward.

  • html5ever

    High-performance browser-grade HTML5 parser

    Project mention: Ask HN: A fast, Rust HTML parser that works? | news.ycombinator.com | 2023-02-23

    So I'm doing some web scraping in Rust, and so I will need to parse HTML. [scraper](https://docs.rs/scraper/latest/scraper/) (which uses [html5ever](https://github.com/servo/html5ever)) is doing fine except that it's the bottleneck of my application.

    So I need a faster parser. I've tried [tl](https://docs.rs/tl/latest/tl/) which would've been perfect except that it doesn't actually work on the HTML I have. When I try to `query_selector` the elements I need, it returns nothing.

    [Kuchiki](https://docs.rs/kuchiki/latest/kuchiki/) is abandonded.

    I couldn't figure out how to get [lol-html](https://github.com/cloudflare/lol-html) to work for me (it's designed for re-writing HTML, whatever that means). It doesn't seem to have an API to extract the inner text of an element.

    [html5gum](https://github.com/untitaker/html5gum) seems to be just an HTML tokenizer, or otherwise just too low-level. I have not yet tried [quick-xml](https://github.com/tafia/quick-xml/) but judging from the README, it's pretty low-level too. I mean, if these are the only options left then I will try them. Otherwise, I would love to use a parser that's faster but as ergonomic as `scraper` or `tl`.

    At this point, I would be happy with an Lxml bridge/port of some sort. I don't need to mutate HTML, just parse and read data from it.

  • msgpack-rust

    MessagePack implementation for Rust / msgpack.org[Rust]

  • byteorder

    Rust library for reading/writing numbers in big-endian and little-endian.

    Project mention: Fedora to disallow CC0-licensed code | news.ycombinator.com | 2022-07-25

    Ditto, I guess? :P (But obviously with the position on the Unlicense flipped.)

    To address your indictment head-on: you suggesting the 0BSD as a better alternative is really missing my point. The 0BSD is not an alternative for my use case. The Unlicense is one of the very few overt "political" acts that I inject into the software I produce. Its purpose is to make a statement. The 0BSD doesn't do that IMO, so it's not actually an alternative that meets my advocacy goal.

    You and Rick Moen seem to have the same apparent blind spot for this. See my conversation with him that started here (which might also clarify some aspects of my own position): https://github.com/docopt/docopt.rs/issues/1#issuecomment-42...

    And finally, note that my dual licensing scheme is exactly a response to the "problems pointed out by quite a few people": https://github.com/BurntSushi/byteorder/issues/26

  • serde-yaml

    Strongly typed YAML library for Rust

    Project mention: Why do we need configuration? Creating and handling configuration files in Rust | dev.to | 2022-11-07

    serde_yaml

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • pikkr

    JSON parser which picks up values directly without performing tokenization in Rust

    Project mention: Serde Json vs Rapidjson (Rust vs C++) | reddit.com/r/rust | 2023-01-17

    Finally, there are parsers specifically tuned to only getting a single key as fast as possible.

  • yaml-rust

    A pure rust YAML implementation.

    Project mention: Borrow checker not liking recursive walk through a HashMap | reddit.com/r/rust | 2023-01-03

    Here's the Rust code so far -- the commented portions are my intent via pseudocode. This is part of an implementation where there's a _yaml_hash member that points to yaml_rust's underlying LinkedHashMap. (Also using anyhow's bail! and Result.)

  • json-rust

    JSON implementation in Rust

  • xml-rs

    An XML library in Rust

    Project mention: Hey Rustaceans! Got a question? Ask here! (51/2022)! | reddit.com/r/rust | 2022-12-18

    xml-rs is an option but is currently regarded as unmaintained in the rust advisories database. Possibly changing, but the wording in this post doesn't give me good hopes: https://github.com/netvl/xml-rs/issues/221

  • ImHex-Patterns

    Hex patterns, include patterns and magic files for the use with the ImHex Hex Editor

    Project mention: GitHub - WerWolv/ImHex: 🔍 A Hex Editor for Reverse Engineers, Programmers and people who value their retinas when working at 3 AM. | reddit.com/r/TheAmpHour | 2023-01-16
  • encoding_rs

    A Gecko-oriented implementation of the Encoding Standard in Rust

    Project mention: This Program is Illegally Packaged in 14 Distributions | news.ycombinator.com | 2022-08-21

    Author of ripgrep here.

    Maybe, umm, don't depend on auto-detection tools as the ultimeate source of whether something is appropriately licensed or not? encoding_rs is clearly licensed, otherwise I wouldn't have used it in ripgrep: https://github.com/hsivonen/encoding_rs

    Take it up with the auto-detection tools. Or at least do your due diligence before claiming ripgrep is using "unlicensed" code.

  • rust-lexical

    Fast numeric to- and from-string conversion routines.

  • sxd-document

    An XML library in Rust

  • rust-cbor

    CBOR (binary JSON) for Rust with automatic type based decoding and encoding.

  • sxd-xpath

    An XPath library in Rust

  • RustyXML

    A XML parser written in Rust

  • hjson-rust for serde

    Hjson for Rust

  • rust-asn1

    A Rust ASN.1 (DER) serializer.

  • rust-htmlescape

    A HTML entity encoding library for Rust

  • nue

    I/O and binary data encoding for Rust

  • pem-rs

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-03-21.

Rust Encoding related posts

Index

What are some of the best open-source Encoding projects in Rust? This list will help you:

Project Stars
1 serde 6,850
2 json 3,764
3 bincode 1,990
4 html5ever 1,729
5 msgpack-rust 878
6 byteorder 827
7 serde-yaml 715
8 pikkr 616
9 yaml-rust 559
10 json-rust 517
11 xml-rs 417
12 ImHex-Patterns 328
13 encoding_rs 297
14 rust-lexical 267
15 sxd-document 147
16 rust-cbor 121
17 sxd-xpath 111
18 RustyXML 97
19 hjson-rust for serde 89
20 rust-asn1 85
21 rust-htmlescape 41
22 nue 38
23 pem-rs 33
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com