{"id":22861554,"url":"https://github.com/dnyaneshwargiri/strabag-coding-challenge","last_synced_at":"2026-01-31T18:31:12.194Z","repository":{"id":266688998,"uuid":"898576529","full_name":"dnyaneshwargiri/strabag-coding-challenge","owner":"dnyaneshwargiri","description":"CRUD operations on data table using AgGrid \u0026 Material","archived":false,"fork":false,"pushed_at":"2024-12-05T14:56:51.000Z","size":607,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T09:52:35.163Z","etag":null,"topics":["aggrid","angular","angular18","angularmaterial","datagrid","employee-management-system","grid-layout","jest","material","rxjs"],"latest_commit_sha":null,"homepage":"https://dnyaneshwargiri-employee-app.netlify.app/","language":"TypeScript","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/dnyaneshwargiri.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-12-04T16:35:49.000Z","updated_at":"2024-12-05T14:57:23.000Z","dependencies_parsed_at":"2024-12-05T15:44:54.294Z","dependency_job_id":null,"html_url":"https://github.com/dnyaneshwargiri/strabag-coding-challenge","commit_stats":null,"previous_names":["dnyaneshwargiri/strabag-coding-challenge"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dnyaneshwargiri/strabag-coding-challenge","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnyaneshwargiri%2Fstrabag-coding-challenge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnyaneshwargiri%2Fstrabag-coding-challenge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnyaneshwargiri%2Fstrabag-coding-challenge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnyaneshwargiri%2Fstrabag-coding-challenge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dnyaneshwargiri","download_url":"https://codeload.github.com/dnyaneshwargiri/strabag-coding-challenge/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dnyaneshwargiri%2Fstrabag-coding-challenge/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28949351,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T18:30:42.805Z","status":"ssl_error","status_checked_at":"2026-01-31T18:30:19.593Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: 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":["aggrid","angular","angular18","angularmaterial","datagrid","employee-management-system","grid-layout","jest","material","rxjs"],"created_at":"2024-12-13T10:09:33.448Z","updated_at":"2026-01-31T18:31:12.177Z","avatar_url":"https://github.com/dnyaneshwargiri.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Employee Document Manager\n\n\u003cdetails\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#prerequisites\"\u003ePrerequisites\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://dnyaneshwargiri-employee-app.netlify.app/\" target=\"blank\"\u003eLive Demo\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n\n## About The Project\n\nA document management web app built with Angular 18, Angular Material, and AG Grid, featuring CRUD functionality with modal-based forms and a responsive data grid. It follows best practices using standalone components and reactive forms.\n\n### Built With\n\nBelow are frameworks/ libraries used to bootstrap this project.\n\n- ![Angular](https://img.shields.io/badge/angular-%23F442D8.svg?style=for-the-badge\u0026logo=angular\u0026logoColor=%23FFFFFF)\n- ![RxJS](https://img.shields.io/badge/rxjs-%23B7178C.svg?style=for-the-badge\u0026logo=reactivex\u0026logoColor=white)\n- ![Material](https://img.shields.io/badge/-Material-%230170FE?style=for-the-badge\u0026logo=Material\u0026logoColor=white)\n- ![AgGrid](https://img.shields.io/badge/-AgrGrid-%230170FE?style=for-the-badge\u0026logo=aggrid\u0026logoColor=white)\n- ![Pnpm](https://img.shields.io/badge/pnpm-%232C8EBB.svg?style=for-the-badge\u0026logo=pnpm\u0026logoColor=white)\n- ![Vite](https://img.shields.io/badge/vite-%23646CFF.svg?style=for-the-badge\u0026logo=vite\u0026logoColor=white)\n- ![Jest](https://img.shields.io/badge/jest-%23C63D14.svg?style=for-the-badge\u0026logo=jest\u0026logoColor=%23FFFFFF)\n\n## Getting Started\n\nBelow are instructions on setting up your project locally.\n\n### Prerequisites\n\n- Node 21\n- Pnpm 9.14.4app\n- Typescript: ~5.5.2\n- Angular: ^18.2.0\n- AgGrid: ^32.3.3\n\n### Installation\n\n1. Clone the repo\n   ```sh\n    git clone https://github.com/dnyaneshwargiri/strabag-coding-challenge.git\n   ```\n2. Go to project directory\n    ```sh\n    cd employee-app\n   ```\n3. Install NPM packages\n   ```sh\n    pnpm install/ yarn install\n   ```\n4. Compile Angular app\n   ```sh\n   pnpm build\n   ```\n5. Run\n   ```sh\n   pnpm dev /* dev mode */\n   ```\n\n## Test and Lint\n\nRun test cases\n\n```sh\npnpm test\n```\n\n\u003cimg width=\"899\" alt=\"unit-test-cases\" src=\"https://github.com/user-attachments/assets/9c9885e5-cdd7-413a-895b-80810cb68817\"\u003e\n\n\nCheck for linting Warnings, Error\n\n```sh\npnpm lint\n```\n\n## To run application via Docker Image\n\n1. Build application for production\n   ```sh\n     pnpm build\n   ```\n2. Build Docker image\n   ```sh\n     chmod +x ./docker.build.sh\n   ```\n   ```sh\n    sh ./docker.build.sh\n   ```\n3. Run Docker image\n   ```sh\n     docker run -p 4000:4000 employee-app\n   ```\n\nPlease be informed commits are intentionly not squashed.\n\n## Open issues\n1. Non-breaking, Non-functional: Observed console error for modal ==\u003e Blocked aria-hidden on an element because its descendant retained focus.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdnyaneshwargiri%2Fstrabag-coding-challenge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdnyaneshwargiri%2Fstrabag-coding-challenge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdnyaneshwargiri%2Fstrabag-coding-challenge/lists"}