{"id":21894085,"url":"https://github.com/hackgt/config","last_synced_at":"2025-07-26T18:11:22.829Z","repository":{"id":40573904,"uuid":"334764905","full_name":"HackGT/config","owner":"HackGT","description":"Shared project configuration","archived":false,"fork":false,"pushed_at":"2024-01-01T17:21:44.000Z","size":550,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-07-05T12:46:15.179Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/HackGT.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}},"created_at":"2021-01-31T21:53:56.000Z","updated_at":"2022-11-02T13:49:18.000Z","dependencies_parsed_at":"2024-10-06T16:10:50.912Z","dependency_job_id":"80a3fd5d-132b-46c8-8b3c-99d850e81736","html_url":"https://github.com/HackGT/config","commit_stats":{"total_commits":111,"total_committers":3,"mean_commits":37.0,"dds":"0.10810810810810811","last_synced_commit":"445f06a6d41ecad1b01aa14c546a0372720260fa"},"previous_names":[],"tags_count":48,"template":false,"template_full_name":null,"purl":"pkg:github/HackGT/config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackGT%2Fconfig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackGT%2Fconfig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackGT%2Fconfig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackGT%2Fconfig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HackGT","download_url":"https://codeload.github.com/HackGT/config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HackGT%2Fconfig/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267206561,"owners_count":24052762,"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-07-26T02:00:08.937Z","response_time":62,"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":[],"created_at":"2024-11-28T13:18:48.533Z","updated_at":"2025-07-26T18:11:22.778Z","avatar_url":"https://github.com/HackGT.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HexLabs Config\n\nConfig is shared project configuration we use for all HexLabs projects. These configurations help\nensure all of our code is written in the same format and our code style is consistent and readable.\n\n## Script Configurations\n\n- [commitlint-config](./packages/commitlint-config)\n  - Checks that the commit messages match a conventional commit format\n- [eslint-config](./packages/eslint-config)\n  - Lints TypeScript/JavaScript code when used in the backend\n- [eslint-config-react](./packages/eslint-config-react)\n  - Similar to above, lints TypeScript/JavaScript code but also includes additional linting rules\n    for React frontend\n- [prettier-config](./packages/prettier-config)\n  - An opinionated code formatter for many languages to beautify the code style\n- [stylelint-config](./packages/stylelint-config)\n  - Linter used for CSS rules and syntax that can automatically fix problems\n- [tsconfig](./packages/tsconfig)\n  - Specifies the rules of a TypeScript project that are used to compile the code\n\n## Quickstart\n\n### Client (React)\n\nThese steps will setup `eslint`, `prettier`, and `stylelint` for a TypeScript React app.\n\n```bash\nyarn add --dev @hex-labs/eslint-config-react @hex-labs/prettier-config @hex-labs/stylelint-config eslint prettier stylelint\n```\n\nAdd these lines to your `package.json`\n\n```json\n\"eslintConfig\": {\n  \"extends\": \"@hex-labs/eslint-config-react\"\n},\n\"prettier\": \"@hex-labs/prettier-config\",\n\"stylelint\": {\n  \"extends\": \"@hex-labs/stylelint-config\"\n}\n```\n\nTo run, add a `lint` script to `package.json`\n\n```json\n\"scripts\": {\n  \"lint\": \"eslint src/ --fix; stylelint src/**/*.css --fix; prettier . --write\"\n}\n```\n\n### Server (Node)\n\nThese steps will setup `eslint`, `prettier`, and `tsconfig` for a TypeScript Node app.\n\n```bash\nyarn add --dev @hex-labs/eslint-config @hex-labs/prettier-config @hex-labs/tsconfig eslint prettier\n```\n\nAdd these lines to your `package.json`\n\n```json\n\"eslintConfig\": {\n  \"extends\": \"@hex-labs/eslint-config\"\n},\n\"prettier\": \"@hex-labs/prettier-config\"\n```\n\nReplace your `tsconfig.json` with\n\n```json\n\"extends\": \"@hex-labs/tsconfig\"\n```\n\nTo run, add a `lint` script to `package.json`\n\n```json\n\"scripts\": {\n  \"lint\": \"eslint src/ --fix; prettier . --write\"\n}\n```\n\n## How to Contribute\n\n### Commit Guidelines\n\nWe use commitlint to ensure all commits follow a standard guidelines to generated release changelog\nmessages. You can view the format of the commit messages\n[here](https://github.com/angular/angular/blob/main/CONTRIBUTING.md#-commit-message-format).\n\n### Testing\n\nEach package has an associated `__tests__` folder that holds tests to run with `tape`. Before\ncommitting and releasing new versions, all the tests will be run to ensure they pass.\n\n### Release\n\nTo release a new version, run `yarn release` and `git push --follow-tags origin main` to push the\ntags as well. Once the commits are pushed, GitHub Actions will automatically run a workflow to\npublish a new version to npm.\n\n## Attribution\n\nInspired by [jdp-scripts](https://github.com/john-d-pelingo/jdp-scripts).\n\n## License\n\n[MIT](LICENSE) \u0026copy; HexLabs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhackgt%2Fconfig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhackgt%2Fconfig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhackgt%2Fconfig/lists"}