Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

pWebServer

Small, asynchronous web server for use with Raspberry Pi Pico W boards and similar

Background

I wanted something small and reusable to work with my raspberry pi pico w and didn't find anything in the wild. This is a work in progress, but I intend for it to be stable for at least my own use.

Notes

This library is not designed to be particularly fast, however it is intended to be easy to use.

HTTP Methods

Self-defined methods are not currently supported. PATCH, CONNECT, and TRACE are also not implmented

Paths

Simple paths are supported. Complex path matching is not supported.

For example, in some frameworks you might be able to define a path as

/some/path/to/:id

And that would populate the id property or some other variable with the value, for pWebServer that is not the case.

For dynamic data use query strings

Example (micropython - if installed with mip):

from pWebServer.pWebServer import Server
import uasyncio as asyncio

sv = Server()
sv.add_default_route() # simply adds a route at / that returns 200 OK
loop = asyncio.get_event_loop()
loop.create_task(sv.start()) # Start serving for 0.0.0.0 (all ipv4 ips) on port 80
loop.run_forever()

Requirements

python >=3.11 or micropython >=1.20

installing

python (with pypi)

pip install pWebServer

micropython (with mip & url)

Using repl:

import mip
mip.install("github:sjsadowski/pWebServer", version="latest")

Using mpremote:

mpremote mip install github:sjsadowski/pWebServer

Dependencies

MicroPython

MicroPython does not ship with the full set of Python Standard Libraries. For information about this, check the micropython-lib GitHub repo .

  • logging

Python

** None **

Development

- pytest >= 7.4.0
- pytest-asyncio >= 0.21.0
- httpx >= 0.24.1

To Do:

  • Cookie support
  • POST/PUT data support
  • HTTP/2.0(?)
  • Better test coverage

Metadata

Release files for pWebServer 25.8a6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pWebServer 25.8a6
File Size Uploaded Provenance Actions
pwebserver-25.8a6.tar.gz 6.9 kB Without provenance Details for pwebserver-25.8a6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pWebServer 25.8a6
File Interpreter ABI Platform Actions
pwebserver-25.8a6-py3-none-any.whl Python 3 none any Details for pwebserver-25.8a6-py3-none-any.whl

Total release size: 14.4 kB

Release files / pwebserver-25.8a6.tar.gz

Download URL pwebserver-25.8a6.tar.gz
Size 6.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9a33b2d254fa8eab1072392826ba9bd2fd6546179e903a862d7eaa99e7d76cc0
BLAKE2b-256 checksum
How to use checksums
6b8ea55fc3e02c246e06c960f81566313bffd901930f11d1c95f3bf45250778f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via pdm/2.25.5 CPython/3.13.5 Darwin/24.6.0

Release files / pwebserver-25.8a6-py3-none-any.whl

Download URL pwebserver-25.8a6-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c14df19e062cf2038f16cf0aedd306747b2c9290928968d041a712e90db49113
BLAKE2b-256 checksum
How to use checksums
b0c789398698b12eccaafb7a63a6e8ce17efca74561d5eb9d4c3fe56862ec8c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via pdm/2.25.5 CPython/3.13.5 Darwin/24.6.0

Security for pWebServer 25.8a6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page