{"id":15019446,"url":"https://github.com/geontech/angular-redhawk","last_synced_at":"2025-05-02T08:30:36.058Z","repository":{"id":3019953,"uuid":"38050160","full_name":"Geontech/angular-redhawk","owner":"Geontech","description":"Angular v5 library for developing rest-python -backed UIs for REDHAWK SDR Systems","archived":false,"fork":false,"pushed_at":"2023-02-27T17:26:12.000Z","size":6365,"stargazers_count":4,"open_issues_count":12,"forks_count":4,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-07T00:07:23.859Z","etag":null,"topics":["angular4","redhawk","rest-python"],"latest_commit_sha":null,"homepage":"https://geontech.github.io/angular-redhawk","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Geontech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2015-06-25T13:14:32.000Z","updated_at":"2021-04-16T19:13:26.000Z","dependencies_parsed_at":"2023-07-06T13:46:31.153Z","dependency_job_id":null,"html_url":"https://github.com/Geontech/angular-redhawk","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Fangular-redhawk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Fangular-redhawk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Fangular-redhawk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Geontech%2Fangular-redhawk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Geontech","download_url":"https://codeload.github.com/Geontech/angular-redhawk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252008687,"owners_count":21679623,"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":["angular4","redhawk","rest-python"],"created_at":"2024-09-24T19:53:29.792Z","updated_at":"2025-05-02T08:30:33.971Z","avatar_url":"https://github.com/Geontech.png","language":"TypeScript","readme":"# Angular REDHAWK\n\nThe angular-redhawk library is a back-end interface to the REST and socket services of Geon's fork of REST-Python.  It provides minimal examples of very low-level interfaces to these services.\n\nThis Angular library interfaces with the REST-Python server from Geon Technologies.  It provides two modules top-level, Support and UI Kit.  The former contains the high-level Components users can implement in their designs to facilitate easy access to the underlying Services.  It also contains the generic REST Model definitions that are returned by those Services.  The UI Kit contains re-usable UI Components that use those support module Component interfaces to view and manipulate the Models.\n\n## Installing Angular-REDHAWK\n\nIf you are installing Angular-REDHAWK into your application, use `npm` to install it as a dependency:\n\n```base\nnpm install --save angular-redhawk\n```\n\nImport the `AngularRedhawkModule` into your application:\n\n```typescript\nimport { BrowserModule } from '@angular/platform-browser';\nimport { NgModule } from '@angular/core';\nimport { AppComponent } from './app.component';\n\nimport { AngularRedhawkModule } from 'angular-redhawk';\n\n@NgModule({\n  declarations: [\n    AppComponent\n  ],\n  imports: [\n    BrowserModule,\n    AngularRedhawkModule\n  ],\n  providers: [],\n  bootstrap: [AppComponent]\n})\nexport class AppModule { }\n\n```\n\n## Configuring the REST-Python Service\n\nAngular-REDHAWK connects to the REST-Python server using the `RestPythonService`.  The default configuration connects to whatever host is serving your web application at port `8080`, which is the default for Geon's REST-Python server.  The `RestPythonService` supports two methods for configuring that connection: pre- and post- Angular Dependency Injection.  In either case, the interface is defined by `IRestPythonConfig`.\n\n### Pre-injection\n\nIn your application's top-level module, import the `REST_PYTHON_CONFIG` from `AngularRedhawkModule` and provide it to dependency injection:\n\n```typescript\nimport {\n  AngularRedhawkModule,\n  REST_PYTHON_CONFIG\n}\n\n@NgModule({\n  imports: [\n    AngularRedhawkModule\n  ],\n  providers: [\n    { provide: REST_PYTHON_CONFIG, useValue: { host: 'aa.bb.cc.dd' } }\n  ]\n})\n```\n\n### Post-injection\n\nYou can configure the service connection at your application's startup by injecting the `RestPythonService` into the top-level Component and then using `setConfiguration`:\n\n```typescript\nimport { RestPythonService } from 'angular-redhawk';\n\n// In the Component\nconstructor(rp: RestPythonService) {\n  rp.setConfiguration({ port: 9999 });\n}\n```\n\n \u003e **Important:** Socket services do not support reconfiguring URLs at this time.  Do not reconfigure `RestPythonService` using this method after your application is already running!\n\n## Developing the Library\n\nIf you are developing on Angular-REDHAWK:\n\n```bash\ngit clone \u003cpath to\u003e/angular-redhawk\ncd angular-redhawk\nnpm install\nnpm run build\ncd dist\nnpm link\n```\n\nThen, in your application where you want to use it, link the library:\n\n```bash\nnpm link angular-redhawk\n```\n\n \u003e **Note:** If you're using `@angular/cli` for your application, you may need to use `--preserve-symlinks` when running tasks such as `ng serve` or `ng build`.  For example, add to the app's `package.json`:\n\n```json\n\"scripts\": {\n  \"start\":     \"ng serve\",\n  \"start:dev\": \"npm run start --preserve-symlinks\"\n}\n```\n\n### Contributing\n\nUse the NPM task `lint` to quality check your code (it runs TSLint) and `build` to ensure your code has a better chance of working in a downstream Angular application.\n\n```bash\nnpm run lint\nnpm run build\n```\n\nPlease correct all \"errors\" generated by TSlint.  Some sound like nitpicks (like whitespace at the end of lines), but each is there to help transpiling, bundling, etc. in some way.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeontech%2Fangular-redhawk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeontech%2Fangular-redhawk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeontech%2Fangular-redhawk/lists"}