An HTTP request parser with rust and pest.rs

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • Scout APM - Less time debugging, more time building
  • SonarLint - Clean code begins in your IDE with SonarLint
  • SaaSHub - Software Alternatives and Reviews
  • vscode-restclient

    REST Client Extension for Visual Studio Code

    I happened to have learned about parsing expression grammars a few days ago and got really excited about writing my own grammar. As I was missing this VS Code extension when working on neovim, an idea popped up: What if I write an HTTP grammar and an execute request from an interactive prompt?

  • reqwest

    An easy and powerful Rust HTTP Client

    After a quick check of the available rust http client libraries I opted for reqwest. It has a pretty simple API and it seems to be among the most used libraries for this matters. But I'm a bit concerned about all its dependencies so I might try ureq later.

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • pest

    The Elegant Parser (by pest-parser)

    To write our grammar we will use pest. From the website:

  • ureq

    A simple, safe HTTP client

    After a quick check of the available rust http client libraries I opted for reqwest. It has a pretty simple API and it seems to be among the most used libraries for this matters. But I'm a bit concerned about all its dependencies so I might try ureq later.

  • inquire

    A Rust library for building interactive prompts

    At this point I felt a bit lazy to implement the prompt so I searched for existing solutions, one of them being inquire. It has a pretty straight forward API, so to show an interactive select we just need this lines:

  • rq

    HTTP request parser written in rust (by protiumx)

    This project turned out to be quite fun! I ended up naming it rq and you can see its source here

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts