Консольный/TUI postman на rust (ratatui)

Разработка терминального аналога Postman на Rust

Я начал изучать Rust и решил создать на нём достаточно сложное приложение — терминальную версию Postman. В интернете уже есть похожие утилиты: одна на Python, ещё одна на C++ (но с GUI). Я ориентируюсь на LazyGit и LazyDocker:

LazyGit interface LazyDocker interface

Что хочу реализовать

  • Серверная библиотека, которая будет:
    • Отправлять HTTP-запросы.
    • Хранить коллекции запросов (что-то вроде «бекенда»).
  • Импорт коллекций из Postman — используя JSON-файл, экспортируемый из Postman.
  • CLI-клиент — сейчас им занимаюсь
  • Терминальный интерфейс (TUI) — добавлю после завершения CLI-логики:

Postman CLI interface

План работы на стриме

  1. Сначала разработка CLI-клиента на Rust.
  2. Реализация импорта коллекций из Postman.
  3. Хранения запросов, коллекций в бд
  4. Добавление TUI-интерфейса — в стиле LazyGit/LazyDocker:

Почему именно так:

  • CLI-клиент позволит сконцентрироваться на функциональности
  • Импорт из Postman обеспечит совместимость и знакомый формат коллекций.
  • TUI-интерфейс наведет красоту.