-
Notifications
You must be signed in to change notification settings - Fork 98
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #359 from alerque/crate-docs
- Loading branch information
Showing
18 changed files
with
139 additions
and
340 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,54 +1,77 @@ | ||
# Fluent [![Build](https://github.com/projectfluent/fluent-rs/actions/workflows/test.yaml/badge.svg)](https://github.com/projectfluent/fluent-rs/actions/workflows/test.yaml) [![Coverage Status](https://coveralls.io/repos/github/projectfluent/fluent-rs/badge.svg?branch=main)](https://coveralls.io/github/projectfluent/fluent-rs?branch=main) | ||
# Project Fluent | ||
|
||
`fluent-rs` is a collection of Rust crates implementing [Project Fluent](https://projectfluent.org). | ||
[![Build](https://github.com/projectfluent/fluent-rs/actions/workflows/test.yaml/badge.svg)](https://github.com/projectfluent/fluent-rs/actions/workflows/test.yaml) | ||
[![Coverage Status](https://coveralls.io/repos/github/projectfluent/fluent-rs/badge.svg?branch=main)](https://coveralls.io/github/projectfluent/fluent-rs?branch=main) | ||
|
||
The `fluent-rs` workspace is a collection of Rust crates implementing [Project Fluent][], | ||
a localization system designed to unleash the entire expressive power of natural language translations. | ||
|
||
Project Fluent keeps simple things simple and makes complex things possible. | ||
The syntax used for describing translations is easy to read and understand. | ||
At the same time it allows, when necessary, to represent complex concepts from natural languages like gender, plurals, conjugations, and others. | ||
|
||
## Packages | ||
|
||
The crates perform the following functions: | ||
This workspace contains the following crates: | ||
|
||
### fluent [![crates.io](https://img.shields.io/crates/v/fluent.svg)](https://crates.io/crates/fluent) | ||
### fluent | ||
|
||
Umbrella crate combining crates that are ready to be used in production. | ||
[![crates.io](https://img.shields.io/crates/v/fluent.svg)](https://crates.io/crates/fluent) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent)](https://docs.rs/fluent) | ||
|
||
### fluent-syntax [![crates.io](https://img.shields.io/crates/v/fluent_syntax.svg)](https://crates.io/crates/fluent_syntax) | ||
An umbrella crate exposing the combined features of fluent-rs crates with additional convenience macros. | ||
|
||
Low level Fluent Syntax AST and parser API. | ||
### fluent-bundle | ||
|
||
### fluent-bundle [![crates.io](https://img.shields.io/crates/v/fluent_bundle.svg)](https://crates.io/crates/fluent_bundle) | ||
[![crates.io](https://img.shields.io/crates/v/fluent_bundle.svg)](https://crates.io/crates/fluent_bundle) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent-bundle)](https://docs.rs/fluent-bundle) | ||
|
||
Implementation of the low-level Fluent Localization System providing localization capabilities for any Rust project. | ||
A low-level implementation of a collection of localization messages for a single locale. | ||
|
||
### fluent-fallback [![crates.io](https://img.shields.io/crates/v/fluent_fallback.svg)](https://crates.io/crates/fluent_fallback) | ||
### fluent-fallback | ||
|
||
Implementation of the high-level Fluent Localization System providing localization capabilities for any Rust project. | ||
[![crates.io](https://img.shields.io/crates/v/fluent_fallback.svg)](https://crates.io/crates/fluent_fallback) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent-fallback)](https://docs.rs/fluent-fallback) | ||
|
||
### fluent-resmgr [![crates.io](https://img.shields.io/crates/v/fluent_resmgr.svg)](https://crates.io/crates/fluent_resmgr) | ||
A high-level abstraction model for managing locale bundles and runtime localization lifecycle. | ||
|
||
Resource Manager for localization resources. | ||
### fluent-resmgr | ||
|
||
### fluent-cli | ||
[![crates.io](https://img.shields.io/crates/v/fluent_resmgr.svg)](https://crates.io/crates/fluent_resmgr) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent-resmgr)](https://docs.rs/fluent-resmgr) | ||
|
||
A standalone solution for managing resource files and returning locale bundles. | ||
|
||
### fluent-syntax | ||
|
||
[![crates.io](https://img.shields.io/crates/v/fluent_syntax.svg)](https://crates.io/crates/fluent_syntax) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent-syntax)](https://docs.rs/fluent-syntax) | ||
|
||
Collection of command line tools for Fluent. | ||
A low-level parser, AST, and serializer API for the Fluent syntax. | ||
|
||
## Running the project | ||
### fluent-pseudo | ||
|
||
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](Makefile.toml). | ||
[![crates.io](https://img.shields.io/crates/v/fluent_pseudo.svg)](https://crates.io/crates/fluent_pseudo) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent-pseudo)](https://docs.rs/fluent-pseudo) | ||
|
||
### Tests | ||
A pseudolocalization and transformation API. | ||
|
||
To run all of the tests for the repo run: | ||
### fluent-testing | ||
|
||
```sh | ||
cargo make test | ||
``` | ||
[![crates.io](https://img.shields.io/crates/v/fluent_testing.svg)](https://crates.io/crates/fluent_testing) | ||
[![docs.rs](https://img.shields.io/docsrs/fluent-testing)](https://docs.rs/fluent-testing) | ||
|
||
For local code coverage reports run: | ||
A collection of mock scenarios for testing fluent-rs components. | ||
|
||
### intl-memoizer | ||
|
||
[![crates.io](https://img.shields.io/crates/v/fluent_testing.svg)](https://crates.io/crates/fluent_testing) | ||
[![docs.rs](https://img.shields.io/docsrs/intl-memoizer)](https://docs.rs/intl-memoizer) | ||
|
||
A memoizer specifically tailored for storing lazy-initialized intl formatters. | ||
|
||
### fluent-cli | ||
|
||
```sh | ||
# 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 | ||
A collection of developer-oriented command line tools for Fluent. | ||
|
||
# Then coverage can be run like so: | ||
cargo make coverage | ||
``` | ||
[Project Fluent]: https://projectfluent.org |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.