{"id":23201581,"url":"https://github.com/mitodl/smoot-design","last_synced_at":"2026-02-10T17:08:22.633Z","repository":{"id":262519065,"uuid":"884989408","full_name":"mitodl/smoot-design","owner":"mitodl","description":"Design system components for MITODL Projects","archived":false,"fork":false,"pushed_at":"2025-06-13T13:25:54.000Z","size":2714,"stargazers_count":0,"open_issues_count":7,"forks_count":0,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-06-13T14:33:29.741Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mitodl.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"zenodo":null}},"created_at":"2024-11-07T18:45:57.000Z","updated_at":"2025-06-13T13:19:38.000Z","dependencies_parsed_at":"2024-12-10T22:22:05.352Z","dependency_job_id":"62fcd728-6491-44bb-92a2-1f8509cbaf0c","html_url":"https://github.com/mitodl/smoot-design","commit_stats":null,"previous_names":["mitodl/smoot-design"],"tags_count":34,"template":false,"template_full_name":null,"purl":"pkg:github/mitodl/smoot-design","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitodl%2Fsmoot-design","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitodl%2Fsmoot-design/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitodl%2Fsmoot-design/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitodl%2Fsmoot-design/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mitodl","download_url":"https://codeload.github.com/mitodl/smoot-design/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mitodl%2Fsmoot-design/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260519359,"owners_count":23021447,"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":[],"created_at":"2024-12-18T15:15:55.697Z","updated_at":"2026-02-10T17:08:22.625Z","avatar_url":"https://github.com/mitodl.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @mitodl/smoot-design\n\nDesign system components for MITODL Projects\n\n![NPM Version](https://img.shields.io/npm/v/@mitodl/smoot-design)\n\n![NPM Last Update](https://img.shields.io/npm/last-update/@mitodl/smoot-design?label=npm+last+update)\n\n![NPM Unpacked Size](https://img.shields.io/npm/unpacked-size/@mitodl/smoot-design)\n\n![GitHub branch status](https://img.shields.io/github/checks-status/mitodl/smoot-design/main)\n\n## Development and Release\n\nAll PR titles and commits to `main` should use the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) format. During release, the types of commits included since the last release inform what sort of version bump should be made. For example, bugfixes yield a new patch version, whereas breaking changes trigger a major version bump.\n\nTo trigger a release, use the \"Releases (Semantic \u0026 Pre-release)\" github action (`release.md`). This action will perform a semantic release or pre-release based on `release-type` input.\n\n**Pre-releases:** The action will (1) publish the latest commit on specified branch to NPM, with a version `v0.0.0-\u003cgit-short-sha\u003e`, e.g., `v0.0.0-7bc0c0f`; and (2) leave a comment on the branch's PR indicating releaseed version number, if such a PR is open.\n\n**Semantic Release:** The action will:\n\n1. Inspect the commit history since previous release for [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) an\n2. Determine whether the version bump should be major, minor, or patch based on commit types. Breaking changes (e.g., `feat!: remove Button variant 'outlined'`) will result in major version bumps.\n3. Publish the package to NPM and the repository's [Github Releases](https://github.com/mitodl/smoot-design/releases).\n\n## Installation\n\nEnsure `peerDependencies` are installed as well. See [`package.json`](./package.json).\n\n## Documentation\n\nDocumentation for `smoot-design` components is available at https://mitodl.github.io/smoot-design.\n\n### Storybook\n\nComponents in `smoot-design` are documented using Storybook's [autodocs](https://storybook.js.org/docs/writing-docs/autodocs) feature.\n\nAutodocs _should_ infer props and comments from Typescript + JSDoc comments. However, autodocs can be a bit finnicky. Tips:\n\n- **Filename should match Component Name:** If you're documenting `Button`, it must be exported from a file called `Button.tsx`.\n- **Component `displayName`:** Some components may need an explicit `displayName`, this can be set by `Button.displayName=\"Button\"`.\n  - _React component display names are not visible to end users; they are used in React's Dev Tools. React automatically adds display names for most components while transpiling, but autodocs uses un-transpiled code to generate documentation._\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitodl%2Fsmoot-design","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmitodl%2Fsmoot-design","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitodl%2Fsmoot-design/lists"}