{"id":16717155,"url":"https://github.com/mseri/cargo-ssearch","last_synced_at":"2025-05-14T22:33:27.496Z","repository":{"id":57538977,"uuid":"41762417","full_name":"mseri/cargo-ssearch","owner":"mseri","description":"cargo ssearch: cargo search on steroids","archived":false,"fork":false,"pushed_at":"2018-10-11T10:23:24.000Z","size":28,"stargazers_count":11,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-28T07:22:03.389Z","etag":null,"topics":["cargo","cargo-subcommand","cli","crates","plugin","search"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mseri.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}},"created_at":"2015-09-01T20:45:42.000Z","updated_at":"2024-08-26T18:44:07.000Z","dependencies_parsed_at":"2022-09-26T20:31:46.223Z","dependency_job_id":null,"html_url":"https://github.com/mseri/cargo-ssearch","commit_stats":null,"previous_names":["mseri/scrutch"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mseri%2Fcargo-ssearch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mseri%2Fcargo-ssearch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mseri%2Fcargo-ssearch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mseri%2Fcargo-ssearch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mseri","download_url":"https://codeload.github.com/mseri/cargo-ssearch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254239960,"owners_count":22037801,"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":["cargo","cargo-subcommand","cli","crates","plugin","search"],"created_at":"2024-10-12T21:30:16.175Z","updated_at":"2025-05-14T22:33:26.172Z","avatar_url":"https://github.com/mseri.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cargo ssearch -- cargo search on steroids\n\nWith cargo search you often can miss very used packages, for example `cargo search serialize` does not show `serde` in the default output and it only shows `serde_json` if you ask for the first 20 results.\n\nThis search tool gets the results sorted by downloads (or recent downloads) and optionally displayes additional useful resoruces linke homepage and documentation for the user to go and have a look. The output uses colours to distinguish the reults (hopefully) more clearly.\n\nThe usage is as simple as typing `cargo ssearch --help`\n```\ncargo-ssearch-ssearch 0.1.3\nMarcello Seri \u003cmarcello.seri@gmail.com\u003e\ncargo search on steroids\nUSAGE:\n    cargo ssearch [FLAGS] [OPTIONS] \u003cquery\u003e\nFLAGS:\n    -h, --help       Prints help information\n    -q, --quiet      quiet output, display only crate, version and downloads\n    -r, --recent     sort by recent downloads instead of overall downloads\n    -V, --version    Prints version information\nOPTIONS:\n    -l, --limit \u003climit\u003e    how many packages to display [default: 10]\n        --page \u003cpage\u003e      the crates.io search result page to display [default: 1]\nARGS:\n    \u003cquery\u003e    query string for crates.io\n```\n\nThe software was a very fastly made hack, but I am using it and I am happy on how it works.\nThe information are obtained directly from crates.io.\n\n## Build\nIt is enough to clone the repo and compile it with cargo:\n```\n$ git clone https://github.com/mseri/scrutch\n$ cd scrutch\n$ cargo build --release\n```\n\nThe tool can then be run via cargo itself or installed in a local path and run as standalone app.\n\n## Examples\n\n```\n$ cargo ssearch serialize --limit 20 -q\nDisplaying 20 crates from page 1 out of the 466 found.\nserde                   = \"1.0.37\"      (downloads: 5160233)\nrustc-serialize         = \"0.3.24\"      (downloads: 4389049)\nserde_json              = \"1.0.13\"      (downloads: 2730954)\ntoml                    = \"0.4.6\"       (downloads: 2190141)\nquote                   = \"0.5.1\"       (downloads: 2127675)\nserde_derive            = \"1.0.37\"      (downloads: 1870124)\nserde_derive_internals  = \"0.23.0\"      (downloads: 1376928)\nxml-rs                  = \"0.7.0\"       (downloads: 880986)\nserde_codegen_internals = \"0.14.2\"      (downloads: 741492)\nserde_codegen           = \"0.9.0\"       (downloads: 639554)\nhandlebars              = \"1.0.0-beta.1\"        (downloads: 440993)\ncargo_metadata          = \"0.5.4\"       (downloads: 378409)\nbincode                 = \"1.0.0\"       (downloads: 331593)\nserde_urlencoded        = \"0.5.1\"       (downloads: 260365)\nserde_macros            = \"0.8.9\"       (downloads: 209024)\nserde_cbor              = \"0.8.2\"       (downloads: 179360)\nserde_yaml              = \"0.7.3\"       (downloads: 162988)\npostgres                = \"0.15.2\"      (downloads: 99893)\nrmp                     = \"0.8.7\"       (downloads: 99743)\nsodiumoxide             = \"0.0.16\"      (downloads: 87682)\n```\n\n```\n$ cargo ssearch serialize -q --limit 20 -r\nDisplaying 20 crates from page 1 out of the 466 found.\nserde                   = \"1.0.37\"      (downloads: 5160233)\nquote                   = \"0.5.1\"       (downloads: 2127675)\nserde_json              = \"1.0.13\"      (downloads: 2730954)\nserde_derive            = \"1.0.37\"      (downloads: 1870124)\nserde_derive_internals  = \"0.23.0\"      (downloads: 1376928)\ntoml                    = \"0.4.6\"       (downloads: 2190141)\nrustc-serialize         = \"0.3.24\"      (downloads: 4389049)\ncargo_metadata          = \"0.5.4\"       (downloads: 378409)\nxml-rs                  = \"0.7.0\"       (downloads: 880986)\nhandlebars              = \"1.0.0-beta.1\"        (downloads: 440993)\nserde_urlencoded        = \"0.5.1\"       (downloads: 260365)\nbincode                 = \"1.0.0\"       (downloads: 331593)\nrustc-ap-serialize      = \"92.0.0\"      (downloads: 69093)\nserde_codegen_internals = \"0.14.2\"      (downloads: 741492)\nserde_yaml              = \"0.7.3\"       (downloads: 162988)\nencoding_rs             = \"0.7.2\"       (downloads: 85705)\nserde_cbor              = \"0.8.2\"       (downloads: 179360)\nserde_codegen           = \"0.9.0\"       (downloads: 639554)\nserde_test              = \"1.0.37\"      (downloads: 82573)\nrmp                     = \"0.8.7\"       (downloads: 99743)\n```\n\n```\n$ cargo ssearch serialize\nDisplaying 10 crates from page 1 out of the 466 found.\n\nserde                   = \"1.0.37\"      (downloads: 5160233)\n -\u003e A generic serialization/deserialization framework\n    docs: https://docs.serde.rs/serde/\n    home: https://serde.rs\n\nrustc-serialize         = \"0.3.24\"      (downloads: 4389049)\n -\u003e Generic serialization/deserialization support corresponding to the\n`derive(RustcEncodable, RustcDecodable)` mode in the compiler. Also includes\nsupport for hex, base64, and json encoding and decoding.\n    docs: https://doc.rust-lang.org/rustc-serialize\n    home: https://github.com/rust-lang/rustc-serialize\n\nserde_json              = \"1.0.13\"      (downloads: 2730954)\n -\u003e A JSON serialization file format\n    docs: http://docs.serde.rs/serde_json/\n\ntoml                    = \"0.4.6\"       (downloads: 2190141)\n -\u003e A native Rust encoder and decoder of TOML-formatted files and streams. Provides\nimplementations of the standard Serialize/Deserialize traits for TOML data to\nfacilitate deserializing and serializing Rust structures.\n    docs: https://docs.rs/toml\n    home: https://github.com/alexcrichton/toml-rs\n\nquote                   = \"0.5.1\"       (downloads: 2127675)\n -\u003e Quasi-quoting macro quote!(...)\n    docs: https://docs.rs/quote/\n\nserde_derive            = \"1.0.37\"      (downloads: 1870124)\n -\u003e Macros 1.1 implementation of #[derive(Serialize, Deserialize)]\n    docs: https://serde.rs/codegen.html\n    home: https://serde.rs\n\nserde_derive_internals  = \"0.23.0\"      (downloads: 1376928)\n -\u003e AST representation used by Serde derive macros. Unstable.\n    docs: https://docs.serde.rs/serde_derive_internals/\n    home: https://serde.rs\n\nxml-rs                  = \"0.7.0\"       (downloads: 880986)\n -\u003e An XML library in pure Rust\n    docs: http://netvl.github.io/xml-rs/\n\nserde_codegen_internals = \"0.14.2\"      (downloads: 741492)\n -\u003e AST representation used by Serde codegen. Unstable.\n    docs: https://docs.serde.rs/serde_codegen_internals/\n    home: https://serde.rs\n\nserde_codegen           = \"0.9.0\"       (downloads: 639554)\n -\u003e Macros to auto-generate implementations for the serde framework\n    docs: https://serde.rs/codegen.html\n    home: https://serde.rs\n\n\n```\n\n# TODO\n\nThe tool has never been updated as it still works properly.\nIt would be nice to find the time to update the code to more modern and idiomatic rust.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmseri%2Fcargo-ssearch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmseri%2Fcargo-ssearch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmseri%2Fcargo-ssearch/lists"}