{"id":26333025,"url":"https://github.com/cgtwig/dbstat","last_synced_at":"2025-03-15T23:37:27.204Z","repository":{"id":266219362,"uuid":"896698292","full_name":"cgtwig/dbstat","owner":"cgtwig","description":"A simple yet powerful real-time stats dashboard built with Node.js and WebSockets for macOS (13.0+). Monitor network connections, port activity, running processes and more.  Free to use and easily host locally.","archived":false,"fork":false,"pushed_at":"2025-03-07T02:40:00.000Z","size":1181,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-07T03:24:44.741Z","etag":null,"topics":["audit","dashboard-application","macos","macos-security","monitoring","nodejs","realtime","security-tools","spa","stats","system-information"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/cgtwig.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":"2024-12-01T04:05:06.000Z","updated_at":"2025-03-07T02:40:04.000Z","dependencies_parsed_at":"2025-01-07T08:36:11.749Z","dependency_job_id":"8efedc81-b422-4cbb-83de-e7276538d2e4","html_url":"https://github.com/cgtwig/dbstat","commit_stats":null,"previous_names":["cgtwig/dbstat"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgtwig%2Fdbstat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgtwig%2Fdbstat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgtwig%2Fdbstat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cgtwig%2Fdbstat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cgtwig","download_url":"https://codeload.github.com/cgtwig/dbstat/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243806049,"owners_count":20350773,"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","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":["audit","dashboard-application","macos","macos-security","monitoring","nodejs","realtime","security-tools","spa","stats","system-information"],"created_at":"2025-03-15T23:37:26.592Z","updated_at":"2025-03-15T23:37:27.198Z","avatar_url":"https://github.com/cgtwig.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Screenshots\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\n      \u003cfigure style=\"margin: 0;\"\u003e\n        \u003cimg src=\"./assets/images/app-screenshot-light.png\" alt=\"Light Theme Screenshot\" style=\"width: 300px; height: auto;\"\u003e\u003cbr\u003e\n        \u003cfigcaption style=\"font-size: 0.75em; text-align: left;\"\u003eLight mode\u003c/figcaption\u003e\n      \u003c/figure\u003e\n    \u003c/td\u003e\n    \u003ctd\u003e\n      \u003cfigure style=\"margin: 0;\"\u003e\n        \u003cimg src=\"./assets/images/app-screenshot-dark.png\" alt=\"Dark Theme Screenshot\" style=\"width: 300px; height: auto;\"\u003e\u003cbr\u003e\n        \u003cfigcaption style=\"font-size: 0.75em; text-align: left;\"\u003eDark mode\u003c/figcaption\u003e\n      \u003c/figure\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## dbstat (macOS 13.0+)\nA simple forensics dashboard for monitoring real-time metrics on macOS.\nThis project is provided as a free resource, and community contributions are always welcome. New to Git? First-time committers are encouraged.\n\n#### Requirements:\n- **Node.js**: 16+  \n- **macOS**: 11.0+ (Big Sur or later)\n- **Browser**: ✅ Safari / ✅ Firefox (Compatible with any modern browser)\n\n#### Real-time metrics supported (more will be added):\n- Network\n- Port watcher\n- Running processes\n- Storage analytics  \n- Logged-in sessions\n- And many more!\n\n#### Additional features:\n- Dark/light themes\n- GitHub integration\n- OpenAI API support (optional)\n\n#### Dependencies:\n| Package | Version |\n|---------|---------|\n| express | `4.17.1` |\n| socket.io | `4.8.1` |\n| systeminformation | `5.11.9` |\n| jsonwebtoken | `9.0.2` |\n| helmet | `8.0.0` |\n| dotenv | `16.0.0` |\n\n#### Installation\n\n1. **Clone the repo and navigate to the project directory**\n    ```bash\n    git clone https://github.com/cgtwig/dbstat\n    cd dbstat\n    ```\n\n2. **Install required dependencies**\n    ```bash\n    npm install\n    ```\n\n3. **Configure environment variables**\n\n    ```bash\n    # Server configuration\n    PORT=3000\n    HOST=127.0.0.1\n    CORS_ORIGIN=http://127.0.0.1:3000\n    \n    # (REQUIRED) Replace `insert-token-here` using the terminal command provided in README.md\n    JWT_SECRET=insert-token-here\n    \n    # (OPTIONAL) Security command generation test feature\n    # OPENAI_API_KEY=your-api-key\n    ```\n\n4. **Rename `.env-example` to `.env` and replace `JWT_SECRET` value using the command below**\n    ```bash\n    node -e \"console.log(require('crypto').randomBytes(32).toString('hex'))\"\n    ```\n    This generates a cryptographically secure JWT token via the terminal.\n\n5. **OpenAI API setup (OPTIONAL)**\n    This is an experimental feature - The OpenAI API is utilized for generating example terminal commands to assist during forensic workflows. \n\n    **Configuration:**\n    - Locate the commented line in your `.env` file: `# OPENAI_API_KEY=your-api-key`\n    - Remove the `#` comment prefix\n    - Replace `your-api-key` with your valid OpenAI API key\n    \n    **Note:** When enabled, API calls are made using the `gpt-4o-mini` model (approximate cost \u003c $0.01 per request). Each 'regenerate' action triggers a new API request.\n\n6. **Launch the application**\n    ```bash\n    npm start\n    ```\n    The server will initialize and become accessible at `http://localhost:3000` via your browser.  \n\n    If you encounter any issues or would like to request additional functionality, please submit details through the GitHub issues section.\n\n### License\nThis project is licensed under the MIT License and is **open source**. Contributions are welcome!\n\n#macOS #forensics #cybersecurity #infosec #incidentresponse #endpointmonitoring #systemmonitoring #openai #aiintegration #techdashboard #devtools #webdevelopment #nodejs #real-timeanalytics #networksecurity #servermonitoring #securitytools #opensource #privacy #datatracking #cloudsecurity #ITsecurity #systemadministration #monitoringtools #datavisualization #webapp #networkmanagement #aiinsecurity\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcgtwig%2Fdbstat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcgtwig%2Fdbstat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcgtwig%2Fdbstat/lists"}