{"id":19986561,"url":"https://github.com/metrostar/comet-starter","last_synced_at":"2025-09-03T02:36:31.039Z","repository":{"id":163180150,"uuid":"633091845","full_name":"MetroStar/comet-starter","owner":"MetroStar","description":"React with TypeScript Starter App for Comet","archived":false,"fork":false,"pushed_at":"2025-08-22T13:45:54.000Z","size":5409,"stargazers_count":15,"open_issues_count":0,"forks_count":9,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-08-22T15:25:22.910Z","etag":null,"topics":["axios","comet","comet-components","eslint","jotai","jupyter-notebook","keycloak","playwright","prettier","react","react-hook-form","react-query","typescript","uswds","victory-charts","vite","vitest"],"latest_commit_sha":null,"homepage":"https://metrostar.github.io/comet-starter/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MetroStar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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}},"created_at":"2023-04-26T19:03:47.000Z","updated_at":"2025-08-22T13:44:13.000Z","dependencies_parsed_at":"2023-10-13T05:15:16.477Z","dependency_job_id":"6128b3ec-de52-43d4-bcb9-f1851681d424","html_url":"https://github.com/MetroStar/comet-starter","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/MetroStar/comet-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetroStar%2Fcomet-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetroStar%2Fcomet-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetroStar%2Fcomet-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetroStar%2Fcomet-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MetroStar","download_url":"https://codeload.github.com/MetroStar/comet-starter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetroStar%2Fcomet-starter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273381678,"owners_count":25095325,"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","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["axios","comet","comet-components","eslint","jotai","jupyter-notebook","keycloak","playwright","prettier","react","react-hook-form","react-query","typescript","uswds","victory-charts","vite","vitest"],"created_at":"2024-11-13T04:29:36.161Z","updated_at":"2025-09-03T02:36:31.024Z","avatar_url":"https://github.com/MetroStar.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Welcome to the Comet Starter App!\n\nThe goal of this project is to provide a React with TypeScript starter application, which comes pre-configured with the USWDS-based [Comet Component Library](https://github.com/MetroStar/comet) as well as other tools to accelerate development. Some of these tools are as follows:\n\n- Tooling: [Vite](https://vitejs.dev/)\n- Platform: [React](https://react.dev/) with [TypeScript](https://www.typescriptlang.org/)\n- Component Library: [Comet Component Library](https://github.com/MetroStar/comet)\n- Data Visualization: [Victory Charts](https://formidable.com/open-source/victory/)\n- Global State Management: [Jotai](https://jotai.org/)\n- Asynchronous State Management: [Tanstack Query](https://tanstack.com/query/v3/)\n- API Support: [Axios](https://axios-http.com/)\n- Form Validation: [React Hook Form](https://react-hook-form.com/)\n- Unit Testing: [Vitest](https://vitest.dev/) with [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/)\n- Code Analysis: [ESLint](https://eslint.org/)\n- Code Formatting: [Prettier](https://prettier.io/)\n- End-to-End (E2E) Testing: [Playwright](https://playwright.dev/)\n- Accessibility Testing: [Unlighthouse](https://unlighthouse.dev/)\n- API Testing: [Jupyter Notebooks](https://jupyter.org/)\n- Authentication Support: [Keycloak](https://www.keycloak.org/)\n\n## Table of Contents\n\n1. [Running the Project Locally](#running-the-project-locally)\n2. [Running with Docker](#running-with-docker)\n3. [Running Unit Tests](#running-unit-tests)\n4. [Running Code Quality Checks](#running-code-quality-checks)\n5. [Running End-to-End (E2E) Tests](#running-end-to-end-e2e-tests)\n6. [Running Accessibility (a11y) Tests](#running-accessibility-a11y-tests)\n7. [Contributing](#contributing)\n8. [Next Steps](#next-steps)\n\n## Running the Project Locally\n\n1. To install dependencies, run the following:\n\n```sh\nnpm install\n```\n\n2. To install the [Comet CLI](https://github.com/MetroStar/comet/tree/main/packages/comet-cli#example-commands), run the following (optional):\n\n```sh\nnpm install -g @metrostar/comet-cli\n```\n\n3. Install Recommended VS Code Extensions (optional)\n\n4. To run locally with SSO, add a file called `.env.local` to the `comet-starter` directory. Copy and paste the template below and replace the placeholder values with your own (optional):\n\n```\nVITE_SSO_AUTHORITY=[SOME_KEYCLOAK_REALM_URL] # Ex: http://localhost:8088/realms/dev\nVITE_SSO_CLIENT_ID=[SOME_CLIENT_ID] # Ex: dev-client\n```\n\n5. To start the app, run the following:\n\n```sh\nnpm run dev\n```\n\n## Running with Docker\n\n1. To build the image, run the following:\n\n```sh\ndocker build . -t comet-starter\n```\n\n2. To run the container, run the following:\n\n```sh\ndocker run -p 8080:8080 --name comet-starter comet-starter\n```\n\n3. Access the app by navigating to: `http://localhost:8080`\n\n## Running Unit Tests\n\nTo make sure your changes do not break any unit tests, run the following:\n\n```sh\nnpm run test\n```\n\nEnsure to review the coverage directory for code coverage details.\n\n```sh\nnpm run test:coverage\n```\n\n## Running Code Quality Checks\n\nTo make sure your changes adhere to additional code quality standards, run the following:\n\n```sh\nnpm run lint\nnpm run format\n```\n\nYou can also see the `.vscode/settings.json` file to find how to enable auto-formatting on save.\n\n## Running End-to-End (E2E) Tests\n\nNote: running E2E tests requires a deployed or running app.\n\n1. To run against a deployed app, add the following to your .env.local (optional):\n\n```\nVITE_BASE_URL=SOME_URL # Ex: 'https://metrostar.github.io/comet-starter/'\n```\n\n2. To install playwright dependencies, run the following (only required the first time):\n\n```sh\nnpx playwright install\n```\n\n3. To run e2e tests, run the following:\n\n```sh\nnpm run e2e\n```\n\n## Running Accessibility (a11y) Tests\n\nNote: running accessibility tests requires a deployed or running app.\n\n1. To run against a deployed app, add the following to your .env.local (optional):\n\n```\nVITE_BASE_URL=SOME_URL # Ex: 'https://metrostar.github.io/comet-starter/'\n```\n\n2. To run accessibility tests, run the following:\n\n```sh\nnpm run a11y\n```\n\n## Contributing\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature_a`)\n3. Commit your Changes (`git commit -m 'Added new feature_a'`)\n4. Push to the Branch (`git push origin feature_a`)\n5. Open a Pull Request\n\n## Next Steps\n\nThe following provides a short list of tasks which are potential next steps for this project. These could be steps in making use of this baseline or they could be for learning purposes.\n\n- [ ] Apply/clean-up basic branding (title, header, footer, logo, favicon, etc)\n- [ ] Add/Update Dashboard, About, Contact Us pages with applicable content\n- [ ] Enhance Dashboard table functionality (filter, search, paging)\n- [ ] Enhance Search Results page with filtering\n- [ ] Add Profile page and Profile Menu to Header (include Sign In/Sign Out, Profile, etc)\n- [ ] Integrate with some API (Ex. [Comet API](https://github.com/MetroStar/comet-api))\n- [ ] Integrate with some Identity Provider to support Single Sign-On (SSO)\n- [ ] Deploy to cloud infrastructure\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetrostar%2Fcomet-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetrostar%2Fcomet-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetrostar%2Fcomet-starter/lists"}