{"id":20964052,"url":"https://github.com/ealexandros/userver","last_synced_at":"2026-04-16T06:02:01.634Z","repository":{"id":97575519,"uuid":"355606158","full_name":"ealexandros/UServer","owner":"ealexandros","description":"A fast and easy micropython HTTP web server repository.","archived":false,"fork":false,"pushed_at":"2021-05-07T13:01:56.000Z","size":226,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-31T23:57:56.553Z","etag":null,"topics":["http","micropython","server","webserver"],"latest_commit_sha":null,"homepage":"","language":"Python","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/ealexandros.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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}},"created_at":"2021-04-07T16:05:17.000Z","updated_at":"2022-08-26T08:01:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"11364373-7527-455c-b985-d4be17b47586","html_url":"https://github.com/ealexandros/UServer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ealexandros/UServer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ealexandros%2FUServer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ealexandros%2FUServer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ealexandros%2FUServer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ealexandros%2FUServer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ealexandros","download_url":"https://codeload.github.com/ealexandros/UServer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ealexandros%2FUServer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31873606,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-15T15:24:51.572Z","status":"online","status_checked_at":"2026-04-16T02:00:06.042Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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","micropython","server","webserver"],"created_at":"2024-11-19T02:49:49.186Z","updated_at":"2026-04-16T06:02:01.599Z","avatar_url":"https://github.com/ealexandros.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# UServer ![micropytho](https://img.shields.io/badge/micropython-blue) ![version](https://img.shields.io/badge/version-1.1.0-brightengreen)\n\n*This is a micropython HTTP web application server repository.*\n\n## 📚 Table of Content\n\n- [Description](#-description)\n- [Setup](#-setup)\n    - [First Step](#step-1)\n    - [Second Step](#step-2)\n- [Requirements](#-requirements)\n- [Documentation](#-documentation)\n- [Conclusion](#-conclusion)\n \n## 🎯 Description\n\nInside this repository you will find a HTTP web server compatable with micropython. You can set the request type(s) you want to listen and send the right responses. For more informations about the capabilities of the library you can peek at the [documentation](#-documentation).\n\n\n#### The project was made with the help of:\n\n1. **Sockets**, which helped me with the web API.\n2. **Regex**, which helped me with finding patterns in strings. \n\n**P.S**: Some `regex` and `os` functions like **findall**, **walk** etc, are not included in the base libraries in micropython, so there is an additional files in [./src/helpers/RegexHelpers.py](https://github.com/alexandros44/UServer/blob/main/src/helpers/RegexHelpers.py) and [./src/helpers/OSPath.py](https://github.com/alexandros44/UServer/blob/main/src/helpers/OSPath.py) for the implamentation of them.\n \n## 📦 Requirements\n\nFor starters you will need to have micropython installed on your microcontroller. You can find out more about that in [here](https://docs.micropython.org/en/latest/esp32/tutorial/intro.html).\n\nAlso you will need to install `python` and `pip`. After installing those run:\n```bash\n\u003e pip install adafruit-ampy\n```\n\n## 🚀 Setup\n\n\n#### Step 1\n\nFor now if you want to use this library you need to clone the repository. You can do that with the help of `git`:\n```bash\n..\u003e git clone https://github.com/alexandros44/UServer.git\n````\n\n#### Step 2\n\nAfter cloning the repository you need to type the following command:\n\n##### Windows\n```bash\n.\\Userver\\helpers\u003e .\\flash.bat -l *communicaiton_port*\n```\n\n##### Linux\n```bash\n.\\Userver\\helpers\u003e ./flash -l *communicaiton_port*\n```\n\nThe `communication_port` is the port in which your microcontroller is connected.\n\n**P.S**: First make sure that you downloaded all the necessary tools. (Check the [requirements](#-requirements) for more)\n\n## 📃 Documentation\n\nThe complete documantation you can find in the [./examples/README.md](https://github.com/alexandros44/UServer/blob/main/examples/README.md) file. There are also some applications that demonstrate how this library works in the `./example` folder. Over the time i will make more of these applications for better understanding. The most essential applications/examples are:\n\n1. **[setup.py](https://github.com/alexandros44/UServer/blob/main/examples/setup.py)**, starts up the server.\n2. **[options.py](https://github.com/alexandros44/UServer/blob/main/examples/options.py)**, adding middlewares, logging, etc.\n3. **[middlewares.py](https://github.com/alexandros44/UServer/blob/main/examples/middlewares.py)**, creating and added middlewares.\n\n\n## ✨ Conclusion\n\nThis project gave me a lot of new knowledge about the HTTP (HyperText Transfer Protocol). Started it for fun but ended up making it a github repository.\n\nWatch out there might be bugs. If you **find** any let me know. 😋\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fealexandros%2Fuserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fealexandros%2Fuserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fealexandros%2Fuserver/lists"}