Skip to content

Commit 3b7544b

Browse files
committed
chore: initial commit
0 parents  commit 3b7544b

1 file changed

Lines changed: 95 additions & 0 deletions

File tree

README.md

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
# composable-sdk
2+
3+
## Installation
4+
5+
```bash
6+
bun install
7+
```
8+
9+
## Development
10+
11+
```bash
12+
bun run index.ts
13+
```
14+
15+
### Linting & Formatting
16+
17+
This project uses [Biome](https://biomejs.dev) for linting and formatting.
18+
19+
```bash
20+
bun run check # lint + format (recommended)
21+
bun run lint # lint only, auto-fix
22+
bun run format # format only, auto-fix
23+
```
24+
25+
---
26+
27+
## Release Flow
28+
29+
Releases are managed with [Changesets](https://github.com/changesets/changesets). Every change that should be released must have an accompanying changeset describing the impact.
30+
31+
### 1. Create a changeset
32+
33+
After making your changes, run:
34+
35+
```bash
36+
bunx changeset
37+
```
38+
39+
This prompts you to:
40+
- Select the bump type — `patch` (bug fix), `minor` (new feature), or `major` (breaking change)
41+
- Write a short summary of the change
42+
43+
A `.changeset/*.md` file is created and should be committed alongside your code changes.
44+
45+
### 2. Bump versions
46+
47+
Once changesets are merged to `main`, consume them to update `package.json` versions and generate the `CHANGELOG.md`:
48+
49+
```bash
50+
bun run version
51+
```
52+
53+
Commit the resulting changes:
54+
55+
```bash
56+
git add .
57+
git commit -m "chore: version packages"
58+
```
59+
60+
### 3. Publish to npm
61+
62+
```bash
63+
bun run release
64+
```
65+
66+
This runs `changeset publish`, which:
67+
- Publishes any packages whose version has not yet been published to npm
68+
- Creates git tags for each published version
69+
70+
Push the tags:
71+
72+
```bash
73+
git push --follow-tags
74+
```
75+
76+
---
77+
78+
### Bump type reference
79+
80+
| Type | When to use |
81+
|---|---|
82+
| `patch` | Bug fixes, internal refactors with no API change |
83+
| `minor` | New features, backwards-compatible additions |
84+
| `major` | Breaking changes to the public API |
85+
86+
### Pre-release (canary)
87+
88+
To publish a canary build for testing without affecting the stable release:
89+
90+
```bash
91+
bunx changeset pre enter canary
92+
bun run version
93+
bun run release --tag canary
94+
bunx changeset pre exit
95+
```

0 commit comments

Comments
 (0)