{"id":18887981,"url":"https://github.com/sibyx/monadcount-api","last_synced_at":"2026-05-17T17:10:18.076Z","repository":{"id":261037658,"uuid":"883065670","full_name":"Sibyx/monadcount-api","owner":"Sibyx","description":"Server side for ESP32-based 802.11 sniffers","archived":false,"fork":false,"pushed_at":"2025-03-27T19:30:10.000Z","size":841,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-31T12:28:34.921Z","etag":null,"topics":["esp-idf","esp32","sniffer","wifi"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sibyx.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":null,"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,"zenodo":null}},"created_at":"2024-11-04T10:14:12.000Z","updated_at":"2025-03-27T19:30:13.000Z","dependencies_parsed_at":"2025-03-27T20:20:09.119Z","dependency_job_id":"0fc0f053-1170-427e-9a64-0bf4e3dffec3","html_url":"https://github.com/Sibyx/monadcount-api","commit_stats":null,"previous_names":["sibyx/monadcount-api"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Sibyx/monadcount-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sibyx%2Fmonadcount-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sibyx%2Fmonadcount-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sibyx%2Fmonadcount-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sibyx%2Fmonadcount-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sibyx","download_url":"https://codeload.github.com/Sibyx/monadcount-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sibyx%2Fmonadcount-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274412639,"owners_count":25280198,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-10T02:00:12.551Z","response_time":83,"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":["esp-idf","esp32","sniffer","wifi"],"created_at":"2024-11-08T07:40:58.781Z","updated_at":"2026-05-17T17:10:13.052Z","avatar_url":"https://github.com/Sibyx.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MonadCount API Server\n\nWelcome to the MonadCount API Server repository! This server is the backend component of the MonadCount project,\ndesigned to collect and manage data from ESP32 sniffer devices. The project aims to elevate the simple act of\ncounting to a new philosophical dimension by drawing inspiration from Leibniz's concept of monads—indivisible units\nthat make up the universe.\n\n## Overview\n\nThe MonadCount API Server is built using FastAPI, SQLModel, and integrates with PostgreSQL enhanced with TimescaleDB\nand PostGIS for time-series and geospatial data capabilities. It provides endpoints for ESP32 devices to upload data\nefficiently. The measurements collected by ESP32 sniffers are stored inside the Clickhouse database.\n\n## Getting Started\n\n### From scratch\n\n```shell\n# Clone the repository\ngit clone git@github.com:Sibyx/monadcount-api.git /monadcount-api\n\n# Create environment and install dependencies\ncd /monadcount-api\npython -m venv .venv\nsource .venv/bin/active\npoetry install\n\n# Create configuration (edit the .env)\ncp .env.example .env\n\n# Run server\nuvicorn main:app --reload\n```\n\n## Command Line Interface (CLI)\n\n| Command                                            | Description                                                |\n|----------------------------------------------------|------------------------------------------------------------|\n| `python -m monadcount_api.cli import_measurements` | Import sniffer measurement file to PostgreSQL              |\n| `python -m monadcount_api.cli enqueue`             | Add all `pending` `UploadedFile` object to the tasks queue |\n| `python -m monadcount_api.cli openapi`             | Generates OpenAPI JSON Specification                       |\n\n\n---\nCreated with ❤️ using ☕️ for my kawaii PhD thesis on FIIT STU\n\nIf you enjoy using this project, consider donating! Your donations will go towards therapy sessions because\nI'm an alcoholic and substance abuser and this is my cry for help. Cheers 🍻!\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsibyx%2Fmonadcount-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsibyx%2Fmonadcount-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsibyx%2Fmonadcount-api/lists"}