{"id":35159907,"url":"https://github.com/hitchclimber/adaptive_rest","last_synced_at":"2026-01-13T22:57:16.314Z","repository":{"id":330644946,"uuid":"1123457658","full_name":"hitchclimber/adaptive_rest","owner":"hitchclimber","description":"Mock REST server that let's you add resources on the fly.","archived":false,"fork":false,"pushed_at":"2026-01-04T12:08:07.000Z","size":120,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-13T22:56:44.495Z","etag":null,"topics":["developer-tools","mock","ratatui","rest-api","rust","tui"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hitchclimber.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-26T23:10:22.000Z","updated_at":"2026-01-04T12:08:13.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/hitchclimber/adaptive_rest","commit_stats":null,"previous_names":["hitchclimber/adaptive_rest"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/hitchclimber/adaptive_rest","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitchclimber%2Fadaptive_rest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitchclimber%2Fadaptive_rest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitchclimber%2Fadaptive_rest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitchclimber%2Fadaptive_rest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hitchclimber","download_url":"https://codeload.github.com/hitchclimber/adaptive_rest/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitchclimber%2Fadaptive_rest/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28405140,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-13T21:51:37.118Z","status":"ssl_error","status_checked_at":"2026-01-13T21:45:14.585Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["developer-tools","mock","ratatui","rest-api","rust","tui"],"created_at":"2025-12-28T17:59:45.106Z","updated_at":"2026-01-13T22:57:16.307Z","avatar_url":"https://github.com/hitchclimber.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Adaptive Mock REST Server\n\nA simple REST Server based on `actix-web` that lets you add endpoints to test during runtime. While this was mainly for my own educational purposes (learned a ton, btw), I do hope someone might stumble upon this repo and find it useful and/or leave some pointers.\nI'm certain there are thousands of other implementations, but I didn't check; sometimes, while playing around on new projects, I just wanted to have a convenient way (preferably via TUI) to change the API on the go.\n\n## Usage\n\nYou can configure server address, port and themes via `toml` or `json` files. The program tries to load your configuration file from command line options (`--config`), environment (`ADPTV_CONFIG`) and will finally default to some preset.\n\nOn startup, you'll be in `vim`-like `Normal mode`. Following the onscreen instructions you can use these commands to add endpoints:\n\n| Command | Aliases | Description |\n|---------|---------|-------------|\n| `endpoint add \u003cpath\u003e \u003cresponse\u003e` | `ep a`, `ep ad`, `ep update`, `ep u`, `ep up` | Add or update an endpoint |\n| `endpoint delete \u003cpath\u003e` | `ep d`, `ep del` | Delete an endpoint |\n| `endpoint list` | `ep l` | List all endpoints |\n| `endpoint allow \u003cmethod\u003e \u003cpath\u003e` | `ep allow` | Allow an HTTP method on an endpoint |\n| `endpoint deny \u003cmethod\u003e \u003cpath\u003e` | `ep deny` | Deny an HTTP method on an endpoint |\n\nSupported methods: `get`, `post`, `put`, `patch`, `delete` (case insensitive)\n\nIn a separate window you can start hitting those endpoints with your app/`curl`.\n\n## TODOs\n\n- [x] config file support\n- [ ] `XDG` support for config\n- [x] `OPTIONS` method\n- [ ] load endpoints from file during runtime\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhitchclimber%2Fadaptive_rest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhitchclimber%2Fadaptive_rest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhitchclimber%2Fadaptive_rest/lists"}