{"id":49543940,"url":"https://github.com/anmoltutejagithub/remoteops","last_synced_at":"2026-05-02T17:05:11.537Z","repository":{"id":347403540,"uuid":"1185129057","full_name":"AnmolTutejaGitHub/RemoteOps","owner":"AnmolTutejaGitHub","description":"RemoteOps is a SaaS platform to manage and control remote servers efficiently.","archived":false,"fork":false,"pushed_at":"2026-04-06T14:11:36.000Z","size":311,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-06T15:35:05.036Z","etag":null,"topics":["mongodb","nextjs","nodejs","ssh2","websockets","xterm-js"],"latest_commit_sha":null,"homepage":"https://remoteops.anmoltuteja.in","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/AnmolTutejaGitHub.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-18T09:12:11.000Z","updated_at":"2026-04-06T14:11:40.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/AnmolTutejaGitHub/RemoteOps","commit_stats":null,"previous_names":["anmoltutejagithub/remoteops"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AnmolTutejaGitHub/RemoteOps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnmolTutejaGitHub%2FRemoteOps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnmolTutejaGitHub%2FRemoteOps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnmolTutejaGitHub%2FRemoteOps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnmolTutejaGitHub%2FRemoteOps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AnmolTutejaGitHub","download_url":"https://codeload.github.com/AnmolTutejaGitHub/RemoteOps/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AnmolTutejaGitHub%2FRemoteOps/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32542203,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-02T12:25:33.646Z","status":"ssl_error","status_checked_at":"2026-05-02T12:24:51.733Z","response_time":132,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["mongodb","nextjs","nodejs","ssh2","websockets","xterm-js"],"created_at":"2026-05-02T17:04:59.432Z","updated_at":"2026-05-02T17:05:11.522Z","avatar_url":"https://github.com/AnmolTutejaGitHub.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RemoteOps\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://socialify.git.ci/AnmolTutejaGithub/RemoteOps/image?font=Raleway\u0026forks=1\u0026issues=1\u0026language=1\u0026name=1\u0026owner=1\u0026pattern=Floating+Cogs\u0026pulls=1\u0026stargazers=1\u0026theme=Dark\" alt=\"RemoteOps\" /\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://hits.sh/github.com/AnmolTutejaGitHub/RemoteOps/\"\u003e\n    \u003cimg src=\"https://hits.sh/github.com/AnmolTutejaGitHub/RemoteOps.svg?style=plastic\u0026color=0077bf\" alt=\"Hits\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n### Introduction \n\n**RemoteOps** is a remote server management platform that enables users to monitor system metrics like CPU and RAM in real time and securely execute SSH commands in remote servers. It simplifies server administration by providing a centralized and efficient way to manage and control remote machines.\n\n### Live\n- https://remoteops.anmoltuteja.in\n\n### Setup and Installation \n\n#### Pre-Requisities     \n- Node.js\n- MongoDB (local or cloud-based,like MongoDB Atlas)\n- npm or yarn for package management\n\n#### Installation\n1. Clone the repository:   \n```bash\ngit clone https://github.com/AnmolTutejaGitHub/RemoteOps\ncd RemoteOps\n```\n2. Install dependencies for both the client and server:\n```bash\n# Navigate to server and install\ncd server\nnpm install\n\n# Navigate to client and install\ncd ../client\nnpm install\n```\n\n3. Set up Environment Variables: See `env.example` for required variables and setup.\n\n4. Run The Application:   \n```bash\n# In the client folder\nnpm run dev\n\n# In the server folder\nnpm start\n```\n\n# RemoteOps — Project Specification\n \n## Goals\n \n- To simplify remote server management through a centralized platform.\n- To provide real-time monitoring of system metrics such as CPU and RAM usage.\n- To enable secure execution of SSH commands on remote machines.\n- To reduce the complexity of managing multiple servers.\n- To build a scalable and efficient system for remote operations.\n- To provide an interactive browser-based terminal emulator for live shell access to remote servers.\n \n## Specifications\n \n### Functional Requirements\n \n- Users can connect to remote servers using SSH credentials.\n- The system can fetch and display CPU utilization in real time.\n- The system can fetch and display RAM usage (total and used).\n- Users can execute shell commands on remote servers.\n- The system maintains a history of executed commands.\n- Supports both personal and group-based server connections.\n- Users can open an interactive browser-based terminal with full PTY (pseudo terminal) support — enabling tools like `vim`, `top`, and tab completion — via a persistent WebSocket connection relayed through the application server using SSH.\n- The system supports multiple concurrent terminal sessions across different servers, with each session maintaining an isolated SSH shell channel.\n \n### Non-Functional Requirements\n \n- The system ensures secure handling of SSH credentials.\n- The application provides low-latency updates for system metrics.\n- The backend is designed to handle multiple concurrent connections.\n- WebSocket connections for terminal sessions must maintain sub-100ms keystroke-to-render latency under normal network conditions.\n- SSH connections to remote servers are pooled per server — multiple terminal sessions to the same server reuse one underlying SSH connection via independent shell channels.\n\n### Changelog\n\nRefer to [CHANGELOG](CHANGELOG.md) for version history and updates.\n\n### Contributing\n\nWe appreciate your interest in contributing to RemoteOps! Your contributions help us improve and grow. Please feel free to submit pull requests, report issues, or suggest new features. Your feedback and participation are highly valued as we continue to develop and enhance the platform.\n\n### License\n\nRemoteOps is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanmoltutejagithub%2Fremoteops","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanmoltutejagithub%2Fremoteops","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanmoltutejagithub%2Fremoteops/lists"}