{"id":13752033,"url":"https://github.com/pintariching/railwind","last_synced_at":"2025-04-12T18:52:43.330Z","repository":{"id":61375288,"uuid":"533916298","full_name":"pintariching/railwind","owner":"pintariching","description":"Tailwind compiler rewritten in rust","archived":false,"fork":false,"pushed_at":"2023-05-22T08:05:36.000Z","size":539,"stargazers_count":319,"open_issues_count":12,"forks_count":9,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-10-11T12:17:24.909Z","etag":null,"topics":["tailwindcss"],"latest_commit_sha":null,"homepage":"","language":"CSS","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/pintariching.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2022-09-07T19:43:49.000Z","updated_at":"2024-10-03T18:26:13.000Z","dependencies_parsed_at":"2024-01-15T03:42:33.472Z","dependency_job_id":null,"html_url":"https://github.com/pintariching/railwind","commit_stats":{"total_commits":152,"total_committers":8,"mean_commits":19.0,"dds":0.368421052631579,"last_synced_commit":"be51b654739beced8e3f86aac83031edd1196be5"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pintariching%2Frailwind","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pintariching%2Frailwind/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pintariching%2Frailwind/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pintariching%2Frailwind/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pintariching","download_url":"https://codeload.github.com/pintariching/railwind/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248618243,"owners_count":21134200,"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":["tailwindcss"],"created_at":"2024-08-03T09:00:58.417Z","updated_at":"2025-04-12T18:52:43.307Z","avatar_url":"https://github.com/pintariching.png","language":"CSS","funding_links":[],"categories":["CSS"],"sub_categories":[],"readme":"# Railwind\n\nTailwind compiler rewritten in Rust\n\n## Description\n\nThe main goal, is to decouple the original Tailwind project from Node and NPM and add warning messages with some recovery in specific situations with the side goal of possibly making it even faster and smaller (Tailwind already has a [standalone version](https://tailwindcss.com/blog/standalone-cli), but the binary size is a *whooping 35 mb*).\n\n# Getting started\n\n### Installation\n\nTo install with cargo, run `cargo install railwind_cli` to install the CLI.\n\n### Using railwind\n\nTo first start, generate a default `railwind.config.ron` file using `railwind -g` or `railwind --generate`. At the moment, the config supports only two values:\n\n#### **content**\nSimilar to `tailwind`s option, configure a path to all your HTML templates, Rust or JS files.\n#### **extend_collection_options**\nThe compiler reads the file extension and selects an apropriate `regex` or way to parse that file. For example, files ending with `.html` will be parsed with a `regex`: `(?:class|className)=(?:[\"]\\W+\\s*(?:\\w+)\\()?[\"]([^\"]+)[\"]` to extract the class names. Similarly, you can specify your own `regex` to parse custom files:\n\n```\nextend_collection_options: Some({\n    \"rs\": Regex(r#\"(?:class)=(?:[\"]\\W+\\s*(?:\\w+)\\()?[\"]([^\"]+)[\"]\"#)\n})\n```\nor give hints to the compiler, for example to parse a `rs` file as a `html` file:\n\n```\nextend_collection_options: Some({\n    \"rs\": Html\n})\n```\n\nTo check out what other options are available, check out the documentation or the `railwind::CollectionOptions` enum which can be expaned.\n\nAfter setting up the config file, you can run `railwind` to read the `railwind.config.ron` and generate a `railwind.css` file in the same directory. You can optionally specify a different config file with the `-c` flag and a different output file using the `-o` flag. \n\n## Authors\n\nContributors names and contact info\n\n[@pintariching](https://github.com/pintariching)\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE.md file for details\n\n## Acknowledgments\n\nInspiration, code snippets, etc.\n* [awesome-readme](https://github.com/matiassingers/awesome-readme)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpintariching%2Frailwind","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpintariching%2Frailwind","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpintariching%2Frailwind/lists"}