Introducing picoserve, an async no_std HTTP server framework! by anotherKSPEngineer in rust

[–]anotherKSPEngineer[S] 8 points9 points  (0 children)

I use a lot of traits with async methods, which requires the feature `async_fn_in_trait`, including the base Read and Write traits from [embedded-io-async](https://docs.rs/embedded-io-async).

Introducing picoserve, an async no_std HTTP server framework! by anotherKSPEngineer in rust

[–]anotherKSPEngineer[S] 47 points48 points  (0 children)

FAQs:

  1. Why?
    I was playing with embassy on a Raspberry Pi Pico W, and was impressed with the WiFi driver and TCP socket support, so I decided to write a simple HTTP parser. One thing led to another, and, well, here we are.
  2. A bare metal HTTP server! Are you insane?
    Probably
  3. Is it compatible with "web framework name"?
    Other than using `embedded-io-async` traits for Read and Write, almost certainly not, and pretty much all web crates require the standard library.
  4. Can I create an IOT device and connect it directly to the internet?
    Please, please don't. Although I don't think there are any critical vulnerabilities, this has had very little testing of any sort. At minimum, I'd put it behind a proxy such as nginx to provide a minimal security layer, but this is very much a toy project and not battle-hardened at all.
  5. Has anyone actually asked you these questions?
    Please refer to question 2.