Welcome to Rust Libraries, a catalogue of Rust community's awesomeness!

Submit a change

It is really easy to contribute to Rust Libraries. Just fork the repository, add your changes, and make a pull request (or just file an issue and we'll manually add it)!

Each category in Rust Libraries maps to a TOML file in categories directory. Creating a new category is as easy as adding a new TOML file.

To add a new project to a category, just add [entry.NAME] to its TOML file (where NAME is same as the name used in project's Cargo.toml). All projects are automatically sorted based on their popularity.

For example, to add Iron in Web Frameworks category, open web-frameworks.toml file and add line [entry.iron]. Rust Libraries will pick rest of the information from crates.io.

Advanced options

By default Rust Libraries picks all necessary information from crates.io. But you can customise a project by supplying additional options in the TOML file.

[entry.iron]

# By default, NAME in [entry.NAME] is the crates.io ID, but you can
# override it here
# or use the value `false` if your project is not on crates.io
crates_io_id = "iron"

# Name is automatically picked from crates.io, but you can
# override it here
name = "Iron"

# Custom homepage URL
homepage_url = "http://ironframework.io/"

# Custom repository URL
repository_url = "https://github.com/iron/iron"

If your project needs additional options or you still have any questions, file an issue and we'll take a look!

How are the pages published?

Pages are automatically generated and published to GitHub every 6 hours by a cron job.

0 */6 * * * /bin/bash -l -c 'cd /path/to/libs.rs && bundle && ./script/run automated-bot-stuff >> tmp/cron.log 2>&1'


Licenced under CC0.