/fluent-rs

Rust implementation of Project Fluent

Primary LanguageRustApache License 2.0Apache-2.0

Fluent Build and test Coverage Status

fluent-rs is a collection of Rust crates implementing Project Fluent.

Packages

The crates perform the following functions:

fluent crates.io

Umbrella crate combining crates that are ready to be used in production.

fluent-syntax crates.io

Low level Fluent Syntax AST and parser API.

fluent-bundle crates.io

Implementation of the low-level Fluent Localization System providing localization capabilities for any Rust project.

fluent-fallback crates.io

Implementation of the high-level Fluent Localization System providing localization capabilities for any Rust project.

fluent-resmgr crates.io

Resource Manager for localization resources.

fluent-cli

Collection of command line tools for Fluent.

Running the project

Each fluent-* directory works with the typical cargo commands. In addition there are some general cargo-make commands that can be run. First install cargo-make via cargo install --force cargo-make. The commands are documented in Makefile.toml.

Tests

To run all of the tests for the repo run:

cargo make test

For local code coverage reports run:

# Install the tools first if you haven't done so. The llvm tools must be available
# on the path for this to work correctly.
cargo make install-tools

# Then coverage can be run like so:
cargo make coverage