{"id":15103321,"url":"https://github.com/arnobt78/DataCenter-Manager--Angular-Mobile-App","last_synced_at":"2025-10-25T20:30:16.455Z","repository":{"id":254520729,"uuid":"839760723","full_name":"arnobt78/DataCenter-Manager-AngularApp","owner":"arnobt78","description":"Datacenter Manager is a commercial mobile app that functions as remote access like create server, storage, take snapshots or retrieve the snapshots of HDD, connect/ disconnect to server or datacenter, turn on/off the server.","archived":false,"fork":false,"pushed_at":"2024-08-25T04:01:30.000Z","size":32251,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-18T18:12:10.155Z","etag":null,"topics":["angularjs","commercial-apps","css","html","ionic-cordova","ios-app","json","mobile-app","proxy-security"],"latest_commit_sha":null,"homepage":"https://gil.gmbh/en/projects/project_02/","language":"JavaScript","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/arnobt78.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2024-08-08T09:19:14.000Z","updated_at":"2024-08-25T04:29:09.000Z","dependencies_parsed_at":"2024-08-24T02:45:03.251Z","dependency_job_id":null,"html_url":"https://github.com/arnobt78/DataCenter-Manager-AngularApp","commit_stats":null,"previous_names":["arnobt78/datacenter-manager"],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnobt78%2FDataCenter-Manager-AngularApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnobt78%2FDataCenter-Manager-AngularApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnobt78%2FDataCenter-Manager-AngularApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arnobt78%2FDataCenter-Manager-AngularApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arnobt78","download_url":"https://codeload.github.com/arnobt78/DataCenter-Manager-AngularApp/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238202212,"owners_count":19433177,"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":["angularjs","commercial-apps","css","html","ionic-cordova","ios-app","json","mobile-app","proxy-security"],"created_at":"2024-09-25T19:23:25.815Z","updated_at":"2025-10-25T20:30:16.444Z","avatar_url":"https://github.com/arnobt78.png","language":"JavaScript","readme":"# DataCenter Manager - Official Commercial Angular Mobile App\n\n![Screenshot 2024-08-25 at 05 56 42](https://github.com/user-attachments/assets/c4651899-7e59-4d42-93c8-a98011e2b8e6)\n![Screenshot 2024-08-25 at 05 57 02](https://github.com/user-attachments/assets/a8ef6255-e423-4b8e-8471-24e4c38f8500)\n![Screenshot 2024-08-25 at 05 57 52](https://github.com/user-attachments/assets/e098df5c-915e-4bfd-b46f-a36ee29a3e3a)\n![Screenshot 2024-08-25 at 05 58 25](https://github.com/user-attachments/assets/a21e1ea7-4f07-48f0-a9cf-484ccca025d7)\n\n---\n\n## Table of Contents\n\n- [Project Summary](#project-summary)\n- [Key Features](#key-features)\n- [Technical Stack](#technical-stack)\n- [Project Structure](#project-structure)\n- [Installation \u0026 Setup](#installation--setup)\n- [Usage Guide](#usage-guide)\n- [Application Walkthrough](#application-walkthrough)\n- [Core Components \u0026 Routing](#core-components--routing)\n- [API \u0026 Services](#api--services)\n- [Learning Examples](#learning-examples)\n- [References](#references)\n- [License](#license)\n- [Keywords](#keywords)\n- [Conclusion](#conclusion)\n\n---\n\n## Project Summary\n\n**DataCenter-Manager** is an official commercial mobile application designed for IT administrators and technical users to remotely access, monitor, and manage data centers and servers from a mobile device. The app provides a seamless, mobile-first dashboard to create and manage servers, monitor storage, handle snapshots, control server power, and perform other critical data center operations.\n\nThe primary goal is to simplify and centralize remote management tasks for servers and data centers, offering an intuitive user experience with robust features.\n\n- Explore more on the [official project webpage](https://gil.gmbh/en/projects/project_02/).\n\n---\n\n## Key Features\n\n- **Remote Server Creation:** Instantly create and configure new servers from anywhere.\n- **Storage Management:** Manage hard drive snapshots, monitor storage usage, and retrieve backups.\n- **Server Connectivity:** Connect/disconnect to remote servers or full data centers.\n- **Server Power Controls:** Remotely power on/off servers or data center components.\n- **Snapshot Management:** Take, view, and restore HDD snapshots for disaster recovery.\n- **User-Friendly Dashboard:** Intuitive interface for easy monitoring and management.\n- **Mobile-First Design:** Developed with Ionic/Cordova for cross-platform mobile compatibility.\n\n---\n\n## Technical Stack\n\n- **Frontend:** Ionic Framework, AngularJS, TypeScript, HTML, CSS\n- **Mobile Integration:** Cordova\n- **Data/Communication:** JSON, JavaScript\n- **Platform-Specific:** Swift (for iOS-specific features)\n- **Other Libraries:** angular-translate, localforage, angular-filter, ngSanitize\n\n---\n\n## Project Structure\n\n```\nDataCenter-Manager--AngularApp/\n├── src/\n│   ├── app/             # Angular modules, components, services\n│   ├── assets/          # Static assets (images, icons, etc.)\n│   └── environments/    # Environment-specific config\n├── www/\n│   ├── js/\n│   │   ├── app-js/      # Main app logic (controllers, services, app.js)\n│   │   ├── utilities/   # Utility libraries\n│   │   └── sliding-menu/ # Menu-related controllers\n│   ├── templates/       # HTML templates for views\n│   └── index.html       # Main entry point\n├── hooks/               # Cordova hooks/scripts\n├── resources/           # App icons, splash screens\n├── config.xml           # Cordova config file\n├── package.json         # Node/NPM config\n└── README.md            # Project documentation\n```\n\n---\n\n## Installation \u0026 Setup\n\n### Prerequisites\n\n- [Node.js](https://nodejs.org/) (latest LTS recommended)\n- [npm](https://www.npmjs.com/)\n- [Ionic CLI](https://ionicframework.com/docs/cli): `npm install -g @ionic/cli`\n- [Cordova CLI](https://cordova.apache.org/docs/en/latest/guide/cli/): `npm install -g cordova`\n- [Git](https://git-scm.com/)\n\n---\n\n### Clone the Repository\n\n```bash\ngit clone https://github.com/arnobt78/DataCenter-Manager--AngularApp.git\ncd DataCenter-Manager--AngularApp\n```\n\n---\n\n### Install Dependencies\n\n```bash\nnpm install\n```\n\n---\n\n### Add Platforms\n\n```bash\nionic cordova platform add android\nionic cordova platform add ios\n```\n\u003e **Note:** iOS development requires a Mac with Xcode installed.\n\n---\n\n## Usage Guide\n\n### Running the App in a Browser\n\n```bash\nionic serve\n```\n\n---\n\n### Running on a Device\n\n```bash\nionic cordova run android\nionic cordova run ios\n```\n\n---\n\n### Building for Production\n\n```bash\nionic cordova build android --prod --release\nionic cordova build ios --prod --release\n```\n\n---\n\n## Application Walkthrough\n\n### Login \u0026 First Start\n\n- **Language \u0026 Terms:** On first launch, select language and review terms (`login.firstStartLanguage`).\n- **Credentials:** Enter login credentials (`login.firstStartCredentials`).\n- **PIN Code:** Set or enter a PIN for quick access (`login.setAppCode`).\n\n---\n\n### Main Dashboard\n\n- **All Servers/Storages:** View lists of all servers and storages across datacenters (`app.allServers`, `app.allStorages`).\n- **Datacenters:** View and manage all registered datacenters (`app.datacenters`).\n\n---\n\n### Server \u0026 Storage Management\n\n- **Servers:** List, view, and manage individual servers (`app.servers`, `app.singleServer`).\n- **Storages:** List, view, and manage storage devices (`app.storages`, `app.singleStorage`).\n- **Snapshots:** Manage HDD snapshots for backup and recovery (`app.snapshots`).\n\n---\n\n### App Settings \u0026 Help\n\n- **Settings:** Configure app preferences and options (`app.settings`).\n- **About:** App info and credits (`app.about`).\n- **Help:** User guides and support (`app.help`).\n\n---\n\n## Core Components \u0026 Routing\n\n### Main Angular Modules\n\n- `datacenterManager`: Root Angular module.\n- `datacenterManager.controllers`: All controllers for views.\n- `datacenterManager.services`: Services for API and data.\n- Utility modules: `pascalprecht.translate`, `angular.filter`, `ngSanitize`.\n\n---\n\n### Key Controllers (Examples)\n\n```javascript\n// Example: List of Datacenters Controller\nangular.module('datacenterManager.controllers')\n  .controller('ListofDatacentersController', function (DemoFactory, UserData, ...) {\n    var self = this;\n    self.datacenters = UserData.GetDatacenters();\n    // Methods for managing datacenters...\n  });\n```\n\n---\n\n### Main Routes (app.js)\n\n- `/login/firstStartLanguage` → Language \u0026 terms screen\n- `/login/firstStartCredentials` → Login with credentials\n- `/login/setAppCode` → Set PIN code\n- `/app/allServers` → All servers\n- `/app/allStorages` → All storages\n- `/app/datacenters` → Datacenter list\n- `/app/servers` → Server list\n- `/app/singleServer` → Server details\n- `/app/storages` → Storages list\n- `/app/singleStorage` → Storage details\n- `/app/snapshots` → Snapshot management\n- `/app/settings` → Settings\n- `/app/about` → About\n- `/app/help` → Help\n\n---\n\n## API \u0026 Services\n\n- **UserData:** Handles user/session data.\n- **DemoFactory:** Demo/mock data and testing support.\n- **SSLValidatedAPICall:** Performs secure server API calls.\n- **PopUpService:** Shows popup dialogs and alerts.\n- **HardwareBackButtonManager:** Manages hardware back button behavior on mobile.\n- **Translation:** `angular-translate` for internationalization.\n\n---\n\n## Learning Examples\n\n### Example: Adding a New Server\n\n```javascript\n// In ListofServersController\nself.addServer = function(serverData) {\n  SSLValidatedAPICall.createServer(serverData)\n    .then(function(response) {\n      // Handle success\n    })\n    .catch(function(error) {\n      // Handle error\n    });\n};\n```\n\n### Example: Router Configuration\n\n```javascript\n.state('app.servers', {\n  url: '/servers',\n  cache: false,\n  views: {\n    'menuContent': {\n      templateUrl: 'templates/listof-servers-layout.html',\n      controller: 'ListofServersController as dashServersCtrl'\n    }\n  }\n})\n```\n\n---\n\n## References\n\n- [Ionic Framework Docs](https://ionicframework.com/docs)\n- [Cordova Documentation](https://cordova.apache.org/docs/en/latest/)\n- [AngularJS Docs](https://angularjs.org/)\n- [Official Project Page](https://gil.gmbh/en/projects/project_02/)\n\n---\n\n## License\n\nThis project is licensed for commercial use by the project owner.\n\n---\n\n## Keywords\n\nIonic, Cordova, AngularJS, HTML, CSS, JSON, JavaScript, Swift, TypeScript\n\n---\n\n## Conclusion\n\n**DataCenter-Manager** empowers IT professionals with a robust, mobile-first toolkit for managing servers and datacenters securely and efficiently—anytime, anywhere. Its modular Angular/Ionic architecture and intuitive UI make it both powerful and easy to extend. Whether you're learning mobile app development or managing critical infrastructure, this app is a valuable resource.\n\n---\n\n\u003e Happy Coding! 🚀  \n\u003e Thank you!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farnobt78%2FDataCenter-Manager--Angular-Mobile-App","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farnobt78%2FDataCenter-Manager--Angular-Mobile-App","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farnobt78%2FDataCenter-Manager--Angular-Mobile-App/lists"}