{"id":23916903,"url":"https://github.com/suiware/kit","last_synced_at":"2026-03-07T01:32:09.966Z","repository":{"id":270964259,"uuid":"905170366","full_name":"suiware/kit","owner":"suiware","description":"Opinionated React components and hooks for Sui dApps","archived":false,"fork":false,"pushed_at":"2025-05-28T10:34:51.000Z","size":1082,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-28T10:44:21.199Z","etag":null,"topics":["component-library","dapp-kit","react","sui","sui-dapp-kit","suiware","suiware-kit"],"latest_commit_sha":null,"homepage":"https://kit.suiware.io","language":"TypeScript","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/suiware.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-12-18T09:50:50.000Z","updated_at":"2025-05-28T10:34:43.000Z","dependencies_parsed_at":"2025-04-16T04:51:17.297Z","dependency_job_id":null,"html_url":"https://github.com/suiware/kit","commit_stats":null,"previous_names":["suiware/kit"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/suiware/kit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/suiware%2Fkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/suiware%2Fkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/suiware%2Fkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/suiware%2Fkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/suiware","download_url":"https://codeload.github.com/suiware/kit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/suiware%2Fkit/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263166641,"owners_count":23424207,"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":["component-library","dapp-kit","react","sui","sui-dapp-kit","suiware","suiware-kit"],"created_at":"2025-01-05T12:15:00.081Z","updated_at":"2026-03-07T01:32:04.922Z","avatar_url":"https://github.com/suiware.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @suiware/kit Monorepo\n\nThis monorepo includes `@suiware/kit` and a Docs site to demonstrate the kit's capabilities.\n\n`@suiware/kit` is an opinionated React library that provides a set of React hooks and components to build Sui applications.\n\nSee [@suiware/kit documentation](https://github.com/suiware/kit/tree/main/packages/kit#readme).\n\n### Useful Commands\n\n- `pnpm build` - Build all packages, including the Docs site\n- `pnpm dev` - Run all packages locally and preview of the Docs site\n- `pnpm lint` - Lint all packages\n- `pnpm changeset` - Generate a changeset\n- `pnpm clean` - Clean up all `node_modules` and `dist` folders (runs each package's clean script)\n- `pnpm kit:publish` - Publish @suiware/kit package to NPM\n\n## Apps \u0026 Packages\n\nThis [Turborepo](https://turbo.build/repo)-powered monorepo includes the following packages and applications:\n\n- `apps/docs`: Component documentation site (not yet finished)\n- `packages/kit`: @suiware/kit\n- `packages/typescript-config`: Shared `tsconfig.json`s used throughout the Turborepo\n- `packages/eslint-config`: ESLint preset\n\n### Compilation\n\nTo make the core library code work across all browsers, we compile the raw TypeScript and React code to plain JavaScript. We accomplish this with `tsup`, which uses `esbuild` to greatly improve performance.\n\nRunning `pnpm build` from the root of the Turborepo will run the `build` command defined in each package's `package.json` file. Turborepo runs each `build` in parallel and caches \u0026 hashes the output to speed up future builds.\n\n## Docs\n\n### API reference\n\n[Docs](https://github.com/suiware/kit/tree/main/packages/kit#readme)\n\n### Docs app (in progress)\n\nA simple react app to demonstrate @suiware/kit components.\n\nUsage:\n\n- `pnpm dev`: Starts Storybook in dev mode with hot reloading at `localhost:6006`\n- `pnpm build`: Builds the Storybook UI and generates the static HTML files\n- `pnpm preview`: Starts a local server to view the generated Docs\n\n### Why not Storybook?\n\nPlanned and tried but every Story of Storybook runs in an isolated context and Sui dApp Kit doesn't work well with that.\n\n## Versioning \u0026 Publishing Packages\n\n#### Current way\n\nIncrease version, then publish:\n\n```bash\npnpm kit:publish\n```\n\n#### Alternative way with changesets (not used yet)\n\nThis example uses [Changesets](https://github.com/changesets/changesets) to manage versions, create changelogs, and publish to npm. It's preconfigured so you can start publishing packages immediately.\n\nYou'll need to create an `NPM_TOKEN` and `GITHUB_TOKEN` and add it to your GitHub repository settings to enable access to npm. It's also worth installing the [Changesets bot](https://github.com/apps/changeset-bot) on your repository.\n\n### Generating the Changelog  (not used at the moment)\n\nTo generate your changelog, run `pnpm changeset` locally:\n\n1. **Which packages would you like to include?** – This shows which packages and changed and which have remained the same. By default, no packages are included. Press `space` to select the packages you want to include in the `changeset`.\n1. **Which packages should have a major bump?** – Press `space` to select the packages you want to bump versions for.\n1. If doing the first major version, confirm you want to release.\n1. Write a summary for the changes.\n1. Confirm the changeset looks as expected.\n1. A new Markdown file will be created in the `changeset` folder with the summary and a list of the packages included.\n\n### Releasing (not used at the moment)\n\nWhen you push your code to GitHub, the [GitHub Action](https://github.com/changesets/action) will run the `release` script defined in the root `package.json`:\n\n```bash\nturbo run build --filter=docs^... \u0026\u0026 changeset publish\n```\n\nTurborepo runs the `build` script for all publishable packages (excluding docs) and publishes the packages to npm. By default, this example includes `acme` as the npm organization. To change this, do the following:\n\n- Rename folders in `packages/*` to replace `acme` with your desired scope\n- Search and replace `acme` with your desired scope\n- Re-run `pnpm install`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsuiware%2Fkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsuiware%2Fkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsuiware%2Fkit/lists"}