{"id":13801631,"url":"https://github.com/windht/watcher","last_synced_at":"2025-05-13T11:31:32.059Z","repository":{"id":41119947,"uuid":"459612948","full_name":"windht/watcher","owner":"windht","description":null,"archived":false,"fork":false,"pushed_at":"2022-09-04T07:51:25.000Z","size":2263,"stargazers_count":63,"open_issues_count":0,"forks_count":8,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-18T16:57:39.559Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/windht.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-15T14:27:17.000Z","updated_at":"2024-11-03T20:40:21.000Z","dependencies_parsed_at":"2023-01-17T20:02:37.702Z","dependency_job_id":null,"html_url":"https://github.com/windht/watcher","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windht%2Fwatcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windht%2Fwatcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windht%2Fwatcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/windht%2Fwatcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/windht","download_url":"https://codeload.github.com/windht/watcher/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253932900,"owners_count":21986473,"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":[],"created_at":"2024-08-04T00:01:25.154Z","updated_at":"2025-05-13T11:31:29.325Z","avatar_url":"https://github.com/windht.png","language":"TypeScript","funding_links":[],"categories":["Applications","Apps"],"sub_categories":["Networking","Open Source"],"readme":"\u003cdiv align=\"center\"\u003e\n\u003cimg height=150 src=\"src-tauri/icons/icon.png\" /\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\u003cspan\u003e\u003cb\u003eWatcher\u003c/b\u003e, API manager built for a easier use to manage and collaborate.\u003c/span\u003e\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Windows Support](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge\u0026logo=windows\u0026logoColor=white)](https://github.com/windht/watcher/releases) [![Ubuntu Support](https://img.shields.io/badge/Ubuntu-E95420?style=for-the-badge\u0026logo=ubuntu\u0026logoColor=white)](https://github.com/windht/watcher/releases) [![Mac Support](https://img.shields.io/badge/MACOS-adb8c5?style=for-the-badge\u0026logo=macos\u0026logoColor=white)](https://github.com/windht/watcher/releases)\n\n\u003c/div\u003e\n\n---\n\n# What is Watcher?\n\n![Demo](screenshot.png)\n\nAn API manager built for a easier use to manage and collaborate on API calls. It is also a cross-platform application powered by the web that is being wrapped using [Tauri](https://tauri.studio) framework in which you can run Watcher on Windows, MacOS, or Linux without having much trouble. Some Watcher's features/roadmap in summary are:\n\n- [x] Making Request (Of course!)\n- [x] Directory Management\n- [x] Workspace switch\n- [x] Import from swagger\n- [x] Import from postman\n- [x] Environment Variables Feature\n- [x] Sync/Share Feature (From [supabase](https://supabase.io/))\n- [x] Tab Feature\n- [x] Pre/Post request script\n- [ ] Realtime Collaboration \n- [ ] Sync From more places!\n- [ ] Import from more places!\n- [ ] Flow Management\n\nWatcher is currently under heavy development. You can give your suggestions and feedback on our Discussions page. If you feel comfortable in writing code using Typescript and Rust, we highly encourage you to contribute to this project.\n\n## Installation\n\nIf you want to install Watcher on your system, you can download the installer for your operating system [on the release page](https://github.com/windht/watcher/releases). Please note that the current version is not stable yet, and you may encounter various bugs.\n\n## Tech Stack\n\n- React\n- Chakra UI\n- Mobx\n- Tauri\n- Synced Store + Yjs (For Collaboration)\n\n## Development\n\nIf you want to run this project in your local system, please follow this guide:\n\n0. We use `yarn` to manage package and run scripts.\n\n1. Run `yarn install` to install dependencies.\n\n2. Run `yarn start` to start the react app running on port 3000 by default.\n\n3. Follow [this guide](https://tauri.studio/en/docs/getting-started/intro/#setting-up-your-environment) to set up Tauri environment\n\n4. Run `yarn tauri dev`\n\n## Sync Features\n\nWatcher currently support storing the collection in the supabase cloud. (Can be turned on in the green cloud button). Although it is being stored in the cloud, the data is encrypted with a offline key. This makes the collection impossible to be decrypted. When you are sharing the collection, you are also giving out the offline key which makes it possible for others to decrypt the collection detail locally.\n\nWe are using [automerge](https://github.com/automerge/automerge) to handle the syncing of data between different clients.\n\n## Collaboration (In Progress)\n\n[yjs](https://github.com/yjs/yjs) and [yjs-webrtc](https://github.com/yjs/y-webrtc) is used to share and exchange the realtime states between clients.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwindht%2Fwatcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwindht%2Fwatcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwindht%2Fwatcher/lists"}