{"id":17340925,"url":"https://github.com/lucaspickering/slumber","last_synced_at":"2026-01-02T04:00:12.005Z","repository":{"id":191210988,"uuid":"684277349","full_name":"LucasPickering/slumber","owner":"LucasPickering","description":"Terminal-based HTTP/REST client","archived":false,"fork":false,"pushed_at":"2025-05-09T22:45:11.000Z","size":9504,"stargazers_count":581,"open_issues_count":9,"forks_count":22,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-05-12T02:56:15.518Z","etag":null,"topics":["http","http-client","ratatui","rest-client","rust","tui"],"latest_commit_sha":null,"homepage":"https://slumber.lucaspickering.me/","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/LucasPickering.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"github":"LucasPickering"}},"created_at":"2023-08-28T20:11:04.000Z","updated_at":"2025-05-12T00:50:33.000Z","dependencies_parsed_at":"2024-01-25T00:43:57.462Z","dependency_job_id":"98316aea-4e85-46b2-8d52-4d5398116b55","html_url":"https://github.com/LucasPickering/slumber","commit_stats":{"total_commits":614,"total_committers":8,"mean_commits":76.75,"dds":"0.026058631921824116","last_synced_commit":"b7e68a7aa6c8513590e74b2b7b5f3d12aa0ccdc9"},"previous_names":["lucaspickering/slumber"],"tags_count":50,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucasPickering%2Fslumber","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucasPickering%2Fslumber/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucasPickering%2Fslumber/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LucasPickering%2Fslumber/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LucasPickering","download_url":"https://codeload.github.com/LucasPickering/slumber/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253666060,"owners_count":21944620,"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":["http","http-client","ratatui","rest-client","rust","tui"],"created_at":"2024-10-15T15:47:02.150Z","updated_at":"2026-01-02T04:00:11.996Z","avatar_url":"https://github.com/LucasPickering.png","language":"Rust","readme":"# Slumber\n\n[![Test CI](https://github.com/github/docs/actions/workflows/test.yml/badge.svg)](https://github.com/LucasPickering/slumber/actions)\n[![crates.io](https://img.shields.io/crates/v/slumber.svg)](https://crates.io/crates/slumber)\n[![Sponsor](https://img.shields.io/github/sponsors/LucasPickering?logo=github)](https://github.com/sponsors/LucasPickering)\n\n- [Installation](https://slumber.lucaspickering.me/install.html)\n- [Docs](https://slumber.lucaspickering.me/)\n- [Changelog](https://github.com/lucasPickering/slumber/releases)\n\n![Slumber example](./docs/src/images/demo.gif)\n\nSlumber is a TUI (terminal user interface) HTTP client. Define, execute, and share configurable HTTP requests. Slumber is built on some basic principles:\n\n- It will remain free to use forever\n- You own your data: all configuration and data is stored locally and can be checked into version control\n- It will never be [enshittified](https://en.wikipedia.org/wiki/Enshittification)\n\n## Features\n\n- Usable as a TUI, CLI, or [Python package](https://slumber.lucaspickering.me/integration/python.html)\n- Source-first configuration, for easy persistence and sharing\n- [Import from external formats (e.g. Insomnia)](https://slumber.lucaspickering.me/user_guide/import.html)\n- [Build requests dynamically from other requests, files, and shell commands](https://slumber.lucaspickering.me/user_guide/templates/index.html)\n- [Browse response data using JSONPath selectors](https://slumber.lucaspickering.me/user_guide/tui/filter_query.html)\n- Switch between different environments easily using [profiles](https://slumber.lucaspickering.me/api/request_collection/profile.html)\n- And more!\n\n## Examples\n\nSlumber is based around **collections**. A collection is a group of request **recipes**, which are templates for the requests you want to run. A simple collection could be:\n\n```yaml\n# slumber.yml\nrequests:\n  get:\n    method: GET\n    url: https://shoal.lucaspickering.me/fish\n\n  post:\n    method: POST\n    url: https://shoal.lucaspickering.me/fish\n    body:\n      type: json\n      data:\n        { \"name\": \"Barry\", \"species\": \"Barracuda\", \"age\": 3, \"weight_kg\": 6.2 }\n```\n\nCreate this file, then run the TUI with `slumber`.\n\nFor a more extensive example, see [the docs](https://slumber.lucaspickering.me/getting_started.html).\n\n## Development\n\nIf you want to contribute to Slumber, see `CONTRIBUTING.md` for guidelines, development instructions, etc.\n","funding_links":["https://github.com/sponsors/LucasPickering"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucaspickering%2Fslumber","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flucaspickering%2Fslumber","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flucaspickering%2Fslumber/lists"}