Skip to content

Commit 284c174

Browse files
committed
feat: setup build process
1 parent d7539fc commit 284c174

4 files changed

Lines changed: 976 additions & 6 deletions

File tree

index.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
export { Job } from './src/job.ts'
2+
export { Worker } from './src/worker.ts'
3+
export { QueueManager } from './src/queue_manager.ts'
4+
export {
5+
customBackoff,
6+
linearBackoff,
7+
exponentialBackoff,
8+
fixedBackoff,
9+
} from './src/strategies/backoff_strategy.ts'

package.json

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,17 @@
22
"name": "@boringnode/queue",
33
"description": "A simple and efficient queue system for Node.js applications",
44
"version": "0.0.1",
5+
"main": "build/index.js",
56
"type": "module",
7+
"files": [
8+
"build"
9+
],
10+
"exports": {
11+
".": "./build/index.js",
12+
"./drivers/*": "./build/src/drivers/*.js",
13+
"./contracts/*": "./build/src/contracts/*.js",
14+
"./types/*": "./build/src/types/*.js"
15+
},
616
"imports": {
717
"#src/*": "./src/*.ts",
818
"#drivers/*": "./src/drivers/*.ts",
@@ -12,7 +22,14 @@
1222
"#types/*": "./src/types/*.ts"
1323
},
1424
"scripts": {
15-
"test": "c8 node --enable-source-maps bin/test.ts"
25+
"build": "yarn clean && tsup-node",
26+
"clean": "del-cli build",
27+
"format": "prettier --write .",
28+
"lint": "eslint .",
29+
"prepublishOnly": "yarn build",
30+
"release": "yarn dlx release-it",
31+
"test": "c8 node --enable-source-maps bin/test.ts",
32+
"typecheck": "tsc --noEmit"
1633
},
1734
"dependencies": {
1835
"@lukeed/ms": "^2.0.2",
@@ -29,11 +46,13 @@
2946
"@japa/runner": "^4.4.0",
3047
"@types/node": "^24.3.1",
3148
"c8": "^10.1.3",
49+
"del-cli": "^7.0.0",
3250
"eslint": "^9.35.0",
3351
"ioredis": "^5.7.0",
3452
"prettier": "^3.6.2",
3553
"release-it": "^19.0.4",
3654
"testcontainers": "^11.5.1",
55+
"tsup": "^8.5.1",
3756
"typescript": "^5.9.2"
3857
},
3958
"author": "Romain Lanz <romain.lanz@pm.me>",

tsup.config.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import { defineConfig } from 'tsup'
2+
3+
export default defineConfig({
4+
entry: ['./index.ts', './src/types/*.ts', './src/drivers/*.ts', './src/contracts/*.ts'],
5+
outDir: './build',
6+
clean: true,
7+
format: 'esm',
8+
dts: true,
9+
sourcemap: true,
10+
target: 'esnext',
11+
})

0 commit comments

Comments
 (0)