{"id":20481530,"url":"https://github.com/newtoallofthis123/refresh","last_synced_at":"2026-04-19T11:34:48.803Z","repository":{"id":192809468,"uuid":"687468517","full_name":"newtoallofthis123/refresh","owner":"newtoallofthis123","description":"A Simple Auto Builder CLI for your Applications ","archived":false,"fork":false,"pushed_at":"2023-09-05T14:24:14.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T07:57:51.038Z","etag":null,"topics":["cli","refresh","rust-cli","server"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/refrsh","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/newtoallofthis123.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":"2023-09-05T12:21:34.000Z","updated_at":"2023-09-05T14:13:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"9ec7070f-46ba-4a2a-9c5e-7bc76fe3e511","html_url":"https://github.com/newtoallofthis123/refresh","commit_stats":null,"previous_names":["newtoallofthis123/refresh"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/newtoallofthis123%2Frefresh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/newtoallofthis123%2Frefresh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/newtoallofthis123%2Frefresh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/newtoallofthis123%2Frefresh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/newtoallofthis123","download_url":"https://codeload.github.com/newtoallofthis123/refresh/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242058081,"owners_count":20065062,"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":["cli","refresh","rust-cli","server"],"created_at":"2024-11-15T16:08:45.339Z","updated_at":"2026-04-19T11:34:43.751Z","avatar_url":"https://github.com/newtoallofthis123.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Refresh\n\nA Simple and easy to use hot reload tool for your projects.\n\n## What is Refresh?\n\nRefresh is a very _simple_ cli written in rust that does one thing and one thing only: **Reload your project when any file changes**.\n\nAtleast by default it does that. I am planning to add more features to it in the future.\nFor now, you can use refresh on your:\n\n- Rust projects\n- Go projects\n\nOther than that, you can free to contribute and add support for your own language or toolchain.\n\n## How to use Refresh?\n\nFor now, using refresh is very simple. Just install it using cargo:\n\n```bash\ncargo install refresh\n```\n\nAnd then run it in your project directory:\n\n```bash\nrefresh \u003cdir\u003e\n```\n\nWhere `\u003cdir\u003e` is the directory you want to watch for changes. If you don't specify a directory, it will watch the current directory.\n\n## How does Refresh work?\n\nRefresh uses the [notify](https://crates.io/crates/notify) crate to watch for changes in the specified directory.\n\nRefresh automatically picks up on which tool chain and language you are using and runs the appropriate command to build your project.\n\nFor example, if you are using rust, refresh will run `cargo build` on your project. If you are using go, refresh will run `go build` on your project.\n\nHowever, if just run `refresh` in a directory, if refresh doesn't find an appropriate command to run, it will just exit.\n\n## How to contribute?\n\nIf you want to add support for your own language or toolchain, you can do so by modifying the `src/handler.rs` file.\n\nFor example, the rust handler looks like this:\n\n```rust\nfn handle_cargo(){\n    bunt::println!(\"Building...\");\n    let _ = std::process::Command::new(\"cargo\")\n        .arg(\"build\")\n        .output()\n        .expect(\"Failed to build\");\n    bunt::println!(\"{$green}Build Successful{/$}\");\n}\n```\n\nYou can add your own handler in the same way. Just add a new function and call it in the `handle` function.\nIf you want to add support for a new language, you can do so by adding a new function in the same way.\n\nWell, there is more to it and I will add more documentation in the future. For now, you can just look at the source code and figure it out.\n\n## License\n\nRefresh is licensed under the MIT License. See the [LICENSE](LICENSE) file for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnewtoallofthis123%2Frefresh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnewtoallofthis123%2Frefresh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnewtoallofthis123%2Frefresh/lists"}