{"id":33118538,"url":"https://github.com/dani3l0/Status","last_synced_at":"2025-11-15T04:01:01.358Z","repository":{"id":142744101,"uuid":"609814683","full_name":"dani3l0/Status","owner":"dani3l0","description":"Simple, lightweight, web-based system monitoring tool for small homeservers running Linux.","archived":false,"fork":false,"pushed_at":"2025-06-11T16:20:28.000Z","size":9631,"stargazers_count":254,"open_issues_count":2,"forks_count":27,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-06-11T17:56:46.724Z","etag":null,"topics":["linux","linux-server","python","self-hosted","system-monitor"],"latest_commit_sha":null,"homepage":"https://status-ksk5.onrender.com/","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/dani3l0.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,"zenodo":null}},"created_at":"2023-03-05T10:23:15.000Z","updated_at":"2025-06-11T16:20:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"abdb77d7-64dc-4eb9-873b-b9a22c3ae4b0","html_url":"https://github.com/dani3l0/Status","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dani3l0/Status","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dani3l0%2FStatus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dani3l0%2FStatus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dani3l0%2FStatus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dani3l0%2FStatus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dani3l0","download_url":"https://codeload.github.com/dani3l0/Status/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dani3l0%2FStatus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":284502438,"owners_count":27016443,"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-11-15T02:00:06.050Z","response_time":57,"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":["linux","linux-server","python","self-hosted","system-monitor"],"created_at":"2025-11-15T03:00:35.222Z","updated_at":"2025-11-15T04:01:01.351Z","avatar_url":"https://github.com/dani3l0.png","language":"Python","funding_links":[],"categories":["Software"],"sub_categories":["Monitoring \u0026 Status Pages","Monitoring"],"readme":"**⚠️ Project in maintenance mode**. This means no new features will appear, only bug fixes. For more info, see **[Announcement](announcement.md)**.\n\n\n## :thinking: What is it?\n\n:information_source: **Status** is a simple, lightweight system monitoring app for small homeservers running Linux.\nIt utilizes virtual filesystems (like `/sys`, `/proc` etc.) to retrieve information and give it to end user via nice web interface.\n\n:balance_scale: **Status** provides a good  balance between power and simplicity.\n\n:runner: Runs flawlessly on most desktop computers, mini PCs and Raspberry Pis. However, virtual isolated environments may cause problems.\n\n:tv: **[Check the live demo!](https://status-ksk5.onrender.com)** (but give it a while to load as Render suspends idle services)\n\n\n### Web UI\n\u003cimg src=\"preview.png\"\u003e\n\n### 📱 iOS app by [@JGeek00](https://github.com/JGeek00) - [AppStore](https://apps.apple.com/us/app/server-status-server-monitor/id6479648296)\n\u003cimg src=\"preview-ios.png\"\u003e\n\n\n## :rocket: Installation\n\nThis will take you just a few seconds. It's up to you which one you choose :)\n\n### :hammer: Bare-metal\n\n**:heavy_check_mark: Recommended.** Status has access to all virtual filesystems in your OS, which means more information and most reliable values.\n\n:package: You can skip commands with _(venv only)_ comment above if you already have `python3-aiohttp` distro package installed.\n\n```\n# Clone the repo\ngit clone https://github.com/dani3l0/Status \u0026\u0026 cd Status\n\n# Prepare virtual environment in 'venv' dir (venv only)\npython3 -m venv venv\n\n# Use the virtual environment (venv only)\nsource ./venv/bin/activate\n\n# Install required modules (venv only)\npip3 install -r requirements.txt\n\n# Run Status!\npython3 status.py\n```\n\nIn a one combined command (like for `systemd` service), you can use this as `ExecStart`:\n```\nsh -c \"source ./venv/bin/activate \u0026\u0026 python3 status.py\"\n```\n\n### :whale: Docker\n\n**It just works.** Most of features should run without hassle, but depending on your OS configuration you may notice some minor limitations.\n\n```\n# Clone the repo\ngit clone https://github.com/dani3l0/Status \u0026\u0026 cd Status\n\n# Build \u0026 run app\ndocker-compose up -d\n```\n\nApp should be available on [localhost:9090](http://localhost:9090).\n\n\n## :wrench: Configuration\n\nStatus can be configured in multiple ways:\n\n1. **:desktop_computer: Command line arguments** - the most important and will override everything.\n\n2. **:national_park: environment variables** - will override configuration file.\n\n3. **:memo: configuration file** - the least important, overrides default configuration only.\n\nIt's good not to mix them. Use `--help` for more information.\n\n#### :pencil2: Config keys naming\n\nConfig keys are named slightly differently under different ways of configuration. Look at the table:\n\n|                | in JSON config      | Environment variable        | Command line argument |\n|----------------|---------------------|-----------------------------|-----------------------|\n| **The rule**   | `{section}.{key}`   | `STATUS_{SECTION}_{KEY}`    | `--{section}-{key}`   |\n| **Example #1** | `server.port`       | `STATUS_SERVER_PORT`        | `--server-port`       |\n| **Example #2** | `server.address`    | `STATUS_SERVER_ADDRESS`     | `--server-address`    |\n| **Example #3** | `misc.debug`        | `STATUS_MISC_DEBUG`         | `--misc-debug`        |\n\nCommand line offers `--config` (or `-c`) to set custom config location.\n\nRunning Status with `--no-config` will neither read nor write any configuration file. Overrides `--config`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdani3l0%2FStatus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdani3l0%2FStatus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdani3l0%2FStatus/lists"}