Skip to content

Commit 5e1f67e

Browse files
Merge pull request #13 from datum-cloud/feat/v0.2-refactor
2 parents 4b19196 + ba3f3c0 commit 5e1f67e

542 files changed

Lines changed: 50720 additions & 12193 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.changeset/config.json

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
{
2-
"$schema": "https://unpkg.com/@changesets/config@2.0.0/schema.json",
2+
"$schema": "https://unpkg.com/@changesets/config@3/schema.json",
33
"changelog": "@changesets/cli/changelog",
44
"commit": false,
55
"fixed": [],
66
"linked": [],
77
"access": "public",
8+
"baseBranch": "main",
89
"updateInternalDependencies": "patch",
9-
"ignore": [
10-
"@repo/docs"
11-
]
12-
}
10+
"ignore": ["@repo/storybook", "@repo/docs"]
11+
}

.github/workflows/ci.yml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
branches: [main]
6+
push:
7+
branches: [main]
8+
9+
concurrency:
10+
group: ${{ github.workflow }}-${{ github.ref }}
11+
cancel-in-progress: true
12+
13+
jobs:
14+
lint:
15+
name: Lint
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v4
19+
20+
- uses: pnpm/action-setup@v4
21+
22+
- uses: actions/setup-node@v4
23+
with:
24+
node-version: 24
25+
cache: pnpm
26+
27+
- run: pnpm install --frozen-lockfile
28+
29+
- run: pnpm lint
30+
31+
typecheck:
32+
name: Typecheck
33+
runs-on: ubuntu-latest
34+
steps:
35+
- uses: actions/checkout@v4
36+
37+
- uses: pnpm/action-setup@v4
38+
39+
- uses: actions/setup-node@v4
40+
with:
41+
node-version: 24
42+
cache: pnpm
43+
44+
- run: pnpm install --frozen-lockfile
45+
46+
- run: pnpm turbo typecheck
47+
48+
test:
49+
name: Test
50+
runs-on: ubuntu-latest
51+
steps:
52+
- uses: actions/checkout@v4
53+
54+
- uses: pnpm/action-setup@v4
55+
56+
- uses: actions/setup-node@v4
57+
with:
58+
node-version: 24
59+
cache: pnpm
60+
61+
- run: pnpm install --frozen-lockfile
62+
63+
- run: pnpm test
64+
65+
build:
66+
name: Build
67+
runs-on: ubuntu-latest
68+
needs: [lint, typecheck, test]
69+
steps:
70+
- uses: actions/checkout@v4
71+
72+
- uses: pnpm/action-setup@v4
73+
74+
- uses: actions/setup-node@v4
75+
with:
76+
node-version: 24
77+
cache: pnpm
78+
79+
- run: pnpm install --frozen-lockfile
80+
81+
- run: pnpm build

.github/workflows/publish-datum-ui.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ jobs:
1313
publish-datum-ui:
1414
uses: datum-cloud/actions/.github/workflows/publish-npm-package.yaml@main
1515
permissions:
16-
contents: write # needed to push the version bump commit and tag
17-
id-token: write # needed for npm trusted publishing (OIDC)
16+
contents: write
17+
id-token: write
1818

1919
with:
2020
package-name: "@datum-cloud/datum-ui"

.github/workflows/release.yml

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,38 +5,34 @@ on:
55
branches:
66
- main
77

8-
concurrency: ${{ github.workflow }}-${{ github.ref }}
8+
concurrency:
9+
group: ${{ github.workflow }}-${{ github.ref }}
10+
cancel-in-progress: true
911

1012
jobs:
1113
release:
1214
name: Release
1315
runs-on: ubuntu-latest
16+
permissions:
17+
contents: write
18+
pull-requests: write
1419
steps:
15-
- name: Checkout Repo
16-
uses: actions/checkout@v4
20+
- uses: actions/checkout@v4
1721

18-
- name: Setup Node.js 24.x
19-
uses: actions/setup-node@v4
22+
- uses: pnpm/action-setup@v4
23+
24+
- uses: actions/setup-node@v4
2025
with:
2126
node-version: 24
2227
cache: pnpm
2328

24-
- name: Install Dependencies
25-
run: |
26-
corepack enable
27-
pnpm install --frozen-lockfile
29+
- run: pnpm install --frozen-lockfile
2830

2931
- name: Create Release Pull Request or Publish to npm
3032
id: changesets
3133
uses: changesets/action@v1
3234
with:
33-
# This expects you to have a script called release which does a build for your packages and calls changeset publish
3435
publish: pnpm release
3536
env:
3637
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3738
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
38-
39-
- name: Send a Slack notification if a publish happens
40-
if: steps.changesets.outputs.published == 'true'
41-
# You can do something when a publish happens.
42-
run: my-slack-bot send-notification --message "A new version of ${GITHUB_REPOSITORY} was published!"

.gitignore

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
1-
.DS_Store
2-
node_modules
3-
.turbo
4-
*.log
5-
.next
6-
dist
7-
dist-ssr
8-
*.local
9-
.env
10-
.cache
11-
server/dist
12-
public/dist
1+
node_modules/
2+
dist/
133
storybook-static/
4+
.next/
5+
.turbo/
6+
coverage/
7+
*.tsbuildinfo
8+
.env*
9+
.source/
10+
11+
*.tgz
12+
13+
.claude/
14+
CLAUDE.MD
15+
/docs/

.npmrc

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
1-
auto-install-peers = true
2-
public-hoist-pattern[]=*storybook*
3-
engine-strict = true
1+
auto-install-peers=true

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v24
1+
v24

.vscode/settings.json

Lines changed: 56 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,60 @@
11
{
2+
// TypeScript — use workspace version (not VS Code's bundled one)
3+
"typescript.tsdk": "node_modules/typescript/lib",
4+
"typescript.enablePromptUseWorkspaceTsdk": true,
5+
6+
// ESLint — flat config support
7+
"eslint.useFlatConfig": true,
28
"eslint.workingDirectories": [
3-
{
4-
"mode": "auto"
5-
}
9+
{ "pattern": "apps/*" },
10+
{ "pattern": "packages/*" }
611
],
7-
"typescript.tsdk": "node_modules/typescript/lib",
8-
"css.lint.unknownAtRules": "ignore",
9-
"scss.lint.unknownAtRules": "ignore",
10-
"less.lint.unknownAtRules": "ignore"
12+
13+
// Formatting — let ESLint handle it, disable built-in formatters
14+
"editor.formatOnSave": true,
15+
"editor.defaultFormatter": "dbaeumer.vscode-eslint",
16+
"editor.codeActionsOnSave": {
17+
"source.fixAll.eslint": "explicit"
18+
},
19+
20+
// Tailwind CSS v4
21+
"tailwindCSS.experimental.classRegex": [
22+
["cva\\(([^)]*)\\)", "[\"'`]([^\"'`]*).*?[\"'`]"],
23+
["cx\\(([^)]*)\\)", "(?:'|\"|`)([^']*)(?:'|\"|`)"]
24+
],
25+
"tailwindCSS.includeLanguages": {
26+
"typescript": "javascript",
27+
"typescriptreact": "javascript"
28+
},
29+
30+
// File associations
31+
"files.associations": {
32+
"*.css": "tailwindcss"
33+
},
34+
35+
// Search and file exclusions
36+
"search.exclude": {
37+
"**/node_modules": true,
38+
"**/dist": true,
39+
"**/.next": true,
40+
"**/.turbo": true,
41+
"**/storybook-static": true,
42+
"**/coverage": true,
43+
"**/.source": true
44+
},
45+
"files.exclude": {
46+
"**/.turbo": true
47+
},
48+
49+
// Editor defaults for the project
50+
"editor.tabSize": 2,
51+
"editor.insertSpaces": true,
52+
53+
// File nesting for cleaner explorer
54+
"explorer.fileNesting.enabled": true,
55+
"explorer.fileNesting.patterns": {
56+
"package.json": "pnpm-lock.yaml, pnpm-workspace.yaml, .nvmrc, turbo.json, .gitignore, .npmrc",
57+
"tsconfig.json": "tsconfig.*.json",
58+
"eslint.config.*": ".eslintignore"
59+
}
1160
}

0 commit comments

Comments
 (0)