mirror of
https://github.com/LucasVbr/hono-pug-renderer.git
synced 2026-05-13 17:21:51 +00:00
feat: add build and CI configuration files
This commit is contained in:
@@ -0,0 +1,38 @@
|
|||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test:
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-latest, macos-latest]
|
||||||
|
fail-fast: false
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- id: checkout
|
||||||
|
name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- id: setup-bun
|
||||||
|
name: Setup Bun
|
||||||
|
uses: oven-sh/setup-bun@v1
|
||||||
|
with:
|
||||||
|
bun-version: latest
|
||||||
|
- id: install-deps
|
||||||
|
name: Install dependencies
|
||||||
|
run: |
|
||||||
|
bun install
|
||||||
|
- id: test
|
||||||
|
name: Run test
|
||||||
|
run: |
|
||||||
|
bun test
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
name: Publish to npm
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
release:
|
|
||||||
types: [created]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
publish:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout repo
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Install Bun
|
|
||||||
uses: oven-sh/setup-bun@v1
|
|
||||||
with:
|
|
||||||
bun-version: latest
|
|
||||||
|
|
||||||
- name: Install dependencies
|
|
||||||
run: bun install
|
|
||||||
|
|
||||||
- name: Build with Bun
|
|
||||||
run: |
|
|
||||||
bun run build
|
|
||||||
|
|
||||||
- name: Set up npm auth
|
|
||||||
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc
|
|
||||||
|
|
||||||
- name: Debug .npmrc content
|
|
||||||
run: cat ~/.npmrc
|
|
||||||
|
|
||||||
- name: Publish to npm
|
|
||||||
run: bun publish --access public
|
|
||||||
env:
|
|
||||||
npm_config_userconfig: ~/.npmrc
|
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
name: Release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- 'v*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- uses: actions/setup-node@v3
|
||||||
|
with:
|
||||||
|
node-version: 16.x
|
||||||
|
|
||||||
|
- run: npx changelogithub
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
import type { BuildConfig } from 'bun'
|
||||||
|
import dts from 'bun-plugin-dts'
|
||||||
|
|
||||||
|
const defaultBuildConfig: BuildConfig = {
|
||||||
|
entrypoints: ['./src/index.ts'],
|
||||||
|
outdir: './dist',
|
||||||
|
external: [
|
||||||
|
'hono',
|
||||||
|
'pug',
|
||||||
|
'path',
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
await Promise.all([
|
||||||
|
Bun.build({
|
||||||
|
...defaultBuildConfig,
|
||||||
|
plugins: [dts()],
|
||||||
|
format: 'esm',
|
||||||
|
naming: "[dir]/[name].js",
|
||||||
|
}),
|
||||||
|
Bun.build({
|
||||||
|
...defaultBuildConfig,
|
||||||
|
format: 'cjs',
|
||||||
|
naming: "[dir]/[name].cjs",
|
||||||
|
})
|
||||||
|
])
|
||||||
+33
-28
@@ -1,43 +1,48 @@
|
|||||||
{
|
{
|
||||||
"name": "hono-pug-renderer",
|
"name": "hono-pug-renderer",
|
||||||
"module": "src/index.ts",
|
|
||||||
"main": "dist/index.js",
|
|
||||||
"types": "dist/index.d.ts",
|
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"version": "0.0.2",
|
"version": "0.0.2",
|
||||||
|
"main": "./dist/index.cjs",
|
||||||
|
"module": "./dist/index.js",
|
||||||
|
"types": "./dist/index.d.ts",
|
||||||
"description": "Pug renderer middleware for Hono",
|
"description": "Pug renderer middleware for Hono",
|
||||||
|
"exports": {
|
||||||
|
"types": "./dist/index.d.ts",
|
||||||
|
"import": "./dist/index.js",
|
||||||
|
"require": "./dist/index.cjs"
|
||||||
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "bun build --target=node ./src/index.ts --outfile=./dist/index.js && bun run build:declaration",
|
"build": "bun run build.ts",
|
||||||
"build:declaration": "tsc --emitDeclarationOnly --project tsconfig.types.json",
|
"prepublishOnly": "bun run build"
|
||||||
"postbuild": "rimraf tsconfig.types.tsbuildinfo"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@types/bun": "latest",
|
|
||||||
"@types/pug": "^2.0.10",
|
|
||||||
"prettier": "^3.5.3",
|
|
||||||
"rimraf": "^6.0.1"
|
|
||||||
},
|
|
||||||
"peerDependencies": {
|
|
||||||
"typescript": "^5.8.3"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"hono": "^4.7.8",
|
|
||||||
"pug": "^3.0.3"
|
|
||||||
},
|
|
||||||
"repository": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/LucasVbr/hono-pug-renderer.git"
|
|
||||||
},
|
},
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"hono",
|
"hono",
|
||||||
"pug",
|
"pug",
|
||||||
"renderer",
|
"renderer",
|
||||||
"middleware"
|
"middleware"
|
||||||
],
|
],
|
||||||
"author": "LucasVbr",
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"files": [
|
"homepage": "https://github.com/LucasVbr/hono-pug-renderer#readme",
|
||||||
"dist/*.js",
|
"repository": {
|
||||||
"dist/*.d.ts"
|
"type": "git",
|
||||||
]
|
"url": "git+https://github.com/LucasVbr/hono-pug-renderer.git"
|
||||||
|
},
|
||||||
|
"bugs": "https://github.com/LucasVbr/hono-pug-renderer/issues",
|
||||||
|
"author": "Lucàs Vabre <contact@lucasvbr.dev>",
|
||||||
|
"dependencies": {
|
||||||
|
"hono": "^4.7.8",
|
||||||
|
"pug": "^3.0.3"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/bun": "latest",
|
||||||
|
"@types/pug": "^2.0.10",
|
||||||
|
"prettier": "^3.5.3",
|
||||||
|
"bun-plugin-dts": "latest"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"typescript": "^5.8.3"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
+9
-24
@@ -1,31 +1,16 @@
|
|||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"outDir": "./dist",
|
"target": "es2020",
|
||||||
"rootDir": "./src",
|
|
||||||
"baseUrl": "./",
|
|
||||||
"paths": {
|
|
||||||
"@/*": ["src/*"]
|
|
||||||
},
|
|
||||||
"lib": ["ESNext"],
|
|
||||||
"module": "esnext",
|
"module": "esnext",
|
||||||
"target": "esnext",
|
|
||||||
"moduleResolution": "bundler",
|
|
||||||
"moduleDetection": "force",
|
|
||||||
"allowImportingTsExtensions": true,
|
|
||||||
"noEmit": true,
|
|
||||||
"composite": true,
|
|
||||||
"strict": true,
|
"strict": true,
|
||||||
"downlevelIteration": true,
|
"esModuleInterop": true,
|
||||||
|
"moduleResolution": "node",
|
||||||
"skipLibCheck": true,
|
"skipLibCheck": true,
|
||||||
"jsx": "react-jsx",
|
"noUnusedLocals": true,
|
||||||
"allowSyntheticDefaultImports": true,
|
"noImplicitAny": true,
|
||||||
"forceConsistentCasingInFileNames": true,
|
|
||||||
"allowJs": true,
|
"allowJs": true,
|
||||||
"types": [
|
"noEmit": true,
|
||||||
"bun-types"
|
"outDir": "dist",
|
||||||
]
|
"resolveJsonModule": true
|
||||||
},
|
}
|
||||||
"include": [
|
|
||||||
"src/**/*.ts"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"extends": "./tsconfig.json",
|
|
||||||
"compilerOptions": {
|
|
||||||
"noEmit": false,
|
|
||||||
"emitDeclarationOnly": true,
|
|
||||||
"declaration": true,
|
|
||||||
"outDir": "./dist",
|
|
||||||
"rootDir": "./src",
|
|
||||||
},
|
|
||||||
"include": [
|
|
||||||
"src/**/*.ts"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user