{"id":15647365,"url":"https://github.com/baptiste0928/rosetta","last_synced_at":"2025-04-13T05:09:41.311Z","repository":{"id":57662599,"uuid":"401314046","full_name":"baptiste0928/rosetta","owner":"baptiste0928","description":"Easy to use Rust i18n library based on code generation","archived":false,"fork":false,"pushed_at":"2024-02-16T21:55:49.000Z","size":1158,"stargazers_count":47,"open_issues_count":6,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-13T05:09:15.772Z","etag":null,"topics":["codegen","i18n","rust"],"latest_commit_sha":null,"homepage":"https://baptiste0928.github.io/rosetta/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/baptiste0928.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-30T11:10:34.000Z","updated_at":"2025-03-09T11:57:36.000Z","dependencies_parsed_at":"2024-10-03T12:19:10.591Z","dependency_job_id":"fec7f2db-f659-486b-b6f9-29ca417b6e22","html_url":"https://github.com/baptiste0928/rosetta","commit_stats":{"total_commits":42,"total_committers":1,"mean_commits":42.0,"dds":0.0,"last_synced_commit":"039a69493dc5517d7778b9fb4ed0fa57375cc44e"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baptiste0928%2Frosetta","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baptiste0928%2Frosetta/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baptiste0928%2Frosetta/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baptiste0928%2Frosetta/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baptiste0928","download_url":"https://codeload.github.com/baptiste0928/rosetta/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248665747,"owners_count":21142123,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codegen","i18n","rust"],"created_at":"2024-10-03T12:18:55.484Z","updated_at":"2025-04-13T05:09:41.283Z","avatar_url":"https://github.com/baptiste0928.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rosetta-i18n\n[![Crates.io](https://img.shields.io/crates/v/rosetta-i18n)](https://crates.io/crates/rosetta-i18n)\n[![dependency status](https://deps.rs/repo/github/baptiste0928/rosetta/status.svg)](https://deps.rs/repo/github/baptiste0928/rosetta)\n[![docs.rs](https://img.shields.io/docsrs/rosetta-i18n)](https://docs.rs/rosetta-i18n/)\n[![CI](https://github.com/baptiste0928/rosetta/actions/workflows/ci.yaml/badge.svg?event=push)](https://github.com/baptiste0928/rosetta/actions/workflows/ci.yaml)\n\n**rosetta-i18n** is an easy-to-use and opinionated Rust internationalization (i18n) library powered by code generation.\n\n```rust\nrosetta_i18n::include_translations!();\n\nprintln!(Lang::En.hello(\"world\"));  // Hello, world!\n```\n\n**[Documentation](https://baptiste0928.github.io/rosetta/)**\n\n## Features\n- **No runtime errors.** Translation files are parsed at build time, so your code will never fail due to translations anymore.\n- **No dependencies.** This crate aims to have the smallest runtime overheat compared to raw strings. There is no additional dependencies at runtime.\n- **Standard JSON format.** Translations are written in JSON file with a syntax used by many other i18n libraries. Therefore, most translation services support it out of the box.\n- **String formatting** is supported.\n\n## Installation\nRosetta is separated into two crates, `rosetta-i18n` and `rosetta-build`. To install both, add the following to your `Cargo.toml`:\n\n```toml\n[dependencies]\nrosetta-i18n = \"0.1\"\n\n[build-dependencies]\nrosetta-build = \"0.1\"\n```\n\n## Documentation\n\nThe documentation is available on https://baptiste0928.github.io/rosetta/.\n\nYou can also read the API documentation on *docs.rs*: [`rosetta-i18n`](https://docs.rs/rosetta-i18n/)\nand [`rosetta-build`](https://docs.rs/rosetta-build/).\n\n## Contributing\nThere is no particular contribution guidelines, feel free to open a new PR to improve the code. If you want to introduce a new feature, please create an issue before.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaptiste0928%2Frosetta","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbaptiste0928%2Frosetta","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaptiste0928%2Frosetta/lists"}