Skip to content

Commit 2cfe547

Browse files
authored
Merge pull request #1 from NeaByteLab/refactor/repo-standardize-structure
refactor(repo): standardize project structure and release setup
2 parents 385187c + d45fbb3 commit 2cfe547

16 files changed

Lines changed: 318 additions & 5376 deletions

.github/workflows/ci.yaml

Lines changed: 9 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -10,34 +10,21 @@ jobs:
1010
build-check:
1111
name: Build Check
1212
runs-on: ubuntu-latest
13-
strategy:
14-
matrix:
15-
node-version: [22.x]
1613

1714
steps:
1815
- name: Checkout code
1916
uses: actions/checkout@v4
2017

21-
- name: Setup Node.js ${{ matrix.node-version }}
22-
uses: actions/setup-node@v4
18+
- name: Setup Deno
19+
uses: denoland/setup-deno@v2
2320
with:
24-
node-version: ${{ matrix.node-version }}
25-
cache: 'npm'
21+
deno-version: v2.5.4
2622

27-
- name: Install dependencies
28-
run: npm ci
23+
- name: Format check
24+
run: deno fmt --check src/
2925

30-
- name: Run linting
31-
run: npm run lint
26+
- name: Lint
27+
run: deno lint src/
3228

33-
- name: Run type checking
34-
run: npm run type-check
35-
36-
- name: Build project
37-
run: npm run build
38-
39-
- name: Verify build artifacts
40-
run: |
41-
ls -la dist/
42-
node -e "console.log('✅ CommonJS:', require('./dist/index.cjs').name || 'Jsonary')"
43-
node --input-type=module -e "import Jsonary from './dist/index.mjs'; console.log('✅ ESM:', Jsonary.name || 'Jsonary')"
29+
- name: Type check
30+
run: deno check src/index.ts

.github/workflows/publish.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,21 @@ on:
66
- main
77

88
jobs:
9-
publish:
9+
deno-publish:
10+
name: Deno (JSR)
1011
runs-on: ubuntu-latest
1112
permissions:
1213
contents: read
1314
id-token: write
1415

1516
steps:
16-
- uses: actions/checkout@v4
17+
- uses: actions/checkout@v6
1718
- uses: denoland/setup-deno@v2
1819
with:
1920
deno-version: v2.5.4
2021

2122
- name: Check package
2223
run: deno check src/index.ts
2324

24-
- name: Publish package
25+
- name: Publish to JSR
2526
run: deno publish --allow-dirty

.gitignore

Lines changed: 11 additions & 121 deletions
Original file line numberDiff line numberDiff line change
@@ -1,130 +1,20 @@
1-
# Dependencies
2-
node_modules/
3-
npm-debug.log*
4-
yarn-debug.log*
5-
yarn-error.log*
6-
yarn.lock
7-
8-
# Build outputs
9-
dist/
10-
build/
11-
*.tsbuildinfo
12-
13-
# Environment variables
14-
.env
15-
.env.local
16-
.env.development.local
17-
.env.test.local
18-
.env.production.local
19-
20-
# Logs
21-
logs/
22-
*.log
23-
24-
# Runtime data
25-
pids/
26-
*.pid
27-
*.seed
28-
*.pid.lock
29-
30-
# Coverage directory used by tools like istanbul
1+
# Deno
2+
.deno/
313
coverage/
32-
*.lcov
33-
34-
# nyc test coverage
35-
.nyc_output/
4+
deno.lock
365

37-
# Dependency directories
38-
jspm_packages/
39-
40-
# Optional npm cache directory
41-
.npm
42-
43-
# Optional eslint cache
44-
.eslintcache
45-
46-
# Output of 'npm pack'
47-
*.tgz
48-
49-
# Yarn Integrity file
50-
.yarn-integrity
51-
52-
# IDE files
6+
# IDE
537
.vscode/
548
.idea/
55-
*.swp
56-
*.swo
57-
*~
589

59-
# OS generated files
10+
# OS
6011
.DS_Store
61-
.DS_Store?
62-
._*
63-
.Spotlight-V100
64-
.Trashes
65-
ehthumbs.db
6612
Thumbs.db
6713

68-
# Temporary files
69-
tmp/
70-
temp/
71-
72-
# TypeScript
73-
*.d.ts.map
74-
75-
# ESLint cache
76-
77-
# Prettier cache
78-
.prettiercache
79-
80-
# Microbundle cache
81-
.rpt2_cache/
82-
.rts2_cache_cjs/
83-
.rts2_cache_es/
84-
.rts2_cache_umd/
85-
86-
# Optional REPL history
87-
.node_repl_history
88-
89-
# parcel-bundler cache
90-
.cache
91-
.parcel-cache
92-
93-
# next.js build output
94-
.next
95-
96-
# nuxt.js build output
97-
.nuxt
98-
99-
# vuepress build output
100-
.vuepress/dist
101-
102-
# Serverless directories
103-
.serverless/
104-
105-
# FuseBox cache
106-
.fusebox/
107-
108-
# DynamoDB Local files
109-
.dynamodb/
110-
111-
# TernJS port file
112-
.tern-port
113-
114-
# Stores VSCode versions used for testing VSCode extensions
115-
.vscode-test
116-
117-
# Local development
118-
.env.development
119-
.env.test
120-
.env.production
121-
122-
# Database
123-
*.sqlite
124-
*.sqlite3
125-
*.db
14+
# Node
15+
dist/
16+
node_modules/
17+
package-lock.json
12618

127-
# Backup files
128-
*.backup
129-
*.bak
130-
*.orig
19+
# Local data files
20+
data.json

.prettierignore

Lines changed: 0 additions & 117 deletions
This file was deleted.

.prettierrc

Lines changed: 0 additions & 12 deletions
This file was deleted.

LICENSE

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2025 NeaByteLab
3+
Copyright (c) 2026 NeaByteLab
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1818
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1919
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2020
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21-
SOFTWARE.
21+
SOFTWARE.

0 commit comments

Comments
 (0)