Skip to content

Commit

Permalink
feat(init): package setup
Browse files Browse the repository at this point in the history
  • Loading branch information
jxnnyo committed Oct 30, 2024
0 parents commit 6c6e18c
Show file tree
Hide file tree
Showing 15 changed files with 2,522 additions and 0 deletions.
8 changes: 8 additions & 0 deletions .changeset/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Changesets

Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
with multi-package repos, or single-package repos to help you version and publish your code. You can
find the full documentation for it [in our repository](https://github.com/changesets/changesets)

We have a quick list of common questions to get you started engaging with this project in
[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
15 changes: 15 additions & 0 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"$schema": "https://unpkg.com/@changesets/[email protected]/schema.json",
"changelog": [
"@changesets/changelog-github",
{
"repo": "fivemanage/node-sdk"
}
],
"commit": false,
"fixed": [],
"linked": [],
"access": "public",
"baseBranch": "main",
"updateInternalDependencies": "patch"
}
41 changes: 41 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# EditorConfig is awesome: https://EditorConfig.org

# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
charset = utf-8
indent_style = space
indent_size = 2
trim_trailing_whitespace = true

# TypeScript and JavaScript files
[*.{ts,js}]
quote_type = single

# JSON files
[*.json]
insert_final_newline = false

# Markdown files
[*.md]
trim_trailing_whitespace = false

# YAML files
[*.{yml,yaml}]
indent_size = 2

# Shell scripts
[*.sh]
indent_size = 2

# Ignore built files and node_modules
[{dist,build,node_modules}/**]
indent_style = ignore
indent_size = ignore
end_of_line = ignore
trim_trailing_whitespace = ignore
charset = ignore
50 changes: 50 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Set default behavior to automatically normalize line endings
* text=auto eol=lf

# Source code
*.ts text eol=lf
*.js text eol=lf
*.json text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.md text eol=lf

# Config files
.env text eol=lf
.gitattributes text eol=lf
.gitignore text eol=lf
.editorconfig text eol=lf
*.config.js text eol=lf
*.config.ts text eol=lf
tsconfig.json text eol=lf
package.json text eol=lf
package-lock.json text eol=lf
yarn.lock text eol=lf

# Shell scripts
*.sh text eol=lf

# Documentation
*.txt text eol=lf
LICENSE text eol=lf
README text eol=lf

# Denote all files that are truly binary and should not be modified
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.mov binary
*.mp4 binary
*.mp3 binary
*.zip binary
*.tar binary
*.gz binary
*.tgz binary
*.pdf binary

# Exclude compiled output and dependencies from GitHub language statistics
dist/* linguist-generated=true
build/* linguist-generated=true
node_modules/* linguist-vendored=true
43 changes: 43 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Build

on:
push:
branches:
- "**"
pull_request:
branches:
- main

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Check out repository code
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20"

- name: Install pnpm
uses: pnpm/action-setup@v4

- name: Install dependencies
run: pnpm install

- name: Performing Type Check
run: pnpm run typecheck

- name: Performing Lint
run: pnpm run lint

- name: Performing Format
run: pnpm run format

- name: Performing Check
run: pnpm run check

- name: Performing Build
run: pnpm run build
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# modules

node_modules
dist
5 changes: 5 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
pnpm run typecheck
pnpm run lint
pnpm run format
pnpm run check
pnpm run build
22 changes: 22 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[json]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[yaml]": {
"editor.defaultFormatter": "redhat.vscode-yaml"
},
"[css]": {
"editor.defaultFormatter": "biomejs.biome"
}
}
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# @fmsdk/node
70 changes: 70 additions & 0 deletions biome.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
{
"$schema": "https://biomejs.dev/schemas/1.9.3/schema.json",
"formatter": {
"enabled": true,
"formatWithErrors": false,
"indentStyle": "space",
"indentWidth": 2,
"lineWidth": 80,
"lineEnding": "lf",
"attributePosition": "auto",
"ignore": [".changeset", ".husky", "node_modules", "build", "dist"]
},
"organizeImports": {
"enabled": true,
"ignore": [".changeset", ".husky", "node_modules", "build", "dist"]
},
"linter": {
"enabled": true,
"rules": {
"recommended": true,
"correctness": {
"recommended": true,
"noUnusedVariables": "warn",
"noUnusedImports": "warn"
},
"style": {
"recommended": true
},
"complexity": {
"recommended": true
},
"performance": {
"recommended": true
},
"suspicious": {
"recommended": true
},
"a11y": {
"recommended": true
},
"security": {
"recommended": true
}
},
"ignore": [".changeset", ".husky", "node_modules", "build", "dist"]
},
"javascript": {
"formatter": {
"jsxQuoteStyle": "double",
"quoteProperties": "asNeeded",
"trailingCommas": "es5",
"semicolons": "always",
"arrowParentheses": "always",
"bracketSpacing": true,
"bracketSameLine": false,
"quoteStyle": "double",
"attributePosition": "auto"
}
},
"json": {
"formatter": {
"enabled": true,
"indentStyle": "space",
"indentWidth": 2,
"lineWidth": 80,
"lineEnding": "lf",
"trailingCommas": "none"
}
}
}
36 changes: 36 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"name": "@fmsdk/node",
"private": false,
"version": "0.0.2",
"description": "Node.js utilities for Fivemanage",
"main": "./src/index.ts",
"module": "./src/index.ts",
"files": ["dist", "README.md", "package.json"],
"type": "module",
"scripts": {
"build": "pnpm rimraf dist && tsup",
"dev": "pnpm run build && node dist/index.js",
"lint": "biome lint --write .",
"format": "biome format --write .",
"check": "biome check --write .",
"typecheck": "tsc --noEmit",
"prepare": "husky",
"pub:latest": "changeset publish",
"build:prepare": "pnpm run typecheck && pnpm run lint && pnpm run format && pnpm run check && pnpm run build",
"dev:prepare": "git pull origin main && pnpm i"
},
"devDependencies": {
"@biomejs/biome": "^1.9.4",
"@changesets/changelog-github": "^0.5.0",
"@changesets/cli": "^2.27.9",
"@types/node": "^22.8.4",
"husky": "^9.1.6",
"rimraf": "^6.0.1",
"tsup": "^8.3.5",
"typescript": "^5.6.3"
},
"packageManager": "[email protected]",
"dependencies": {
"axios": "^1.7.7"
}
}
Loading

0 comments on commit 6c6e18c

Please sign in to comment.