Skip to content

Commit 0ca06e7

Browse files
chore: willboosterify this repo
1 parent 0cd705b commit 0ca06e7

File tree

12 files changed

+415
-422
lines changed

12 files changed

+415
-422
lines changed

.cursor/rules/general.mdc

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,31 @@ alwaysApply: true
66

77
## Project Information
88

9-
- Name: firebase-private-key-to-env
9+
- Name: `firebase-private-key-to-env`
1010
- Description: undefined
1111
- Package Manager: yarn
1212

1313
## General Instructions
1414

15-
- Do not write tests unless explicitly requested.
15+
- Create a new branch if the current branch is `main`.
16+
- Run any `git` commands sequentially.
17+
- Write tests ONLY if explicitly requested.
18+
- Make sure to continue to modify the tests and code until the tests pass.
1619
- When fixing tests, gather debug information through logging and screenshots before modifying the code.
17-
- After making code changes, run `yarn check-all-for-ai` to execute all tests (note: this may take up to 30 minutes), or run `yarn check-for-ai` for type checking and linting only.
20+
- After making code changes, run `yarn check-all-for-ai` to execute all tests (takes up to 1 hour), or run `yarn check-for-ai` for type checking and linting only (takes up to 10 minutes).
1821
- If you are confident your changes will not break any tests, you may use `check-for-ai`.
19-
- Once you have verified your changes, commit them to the non-main branch using the `--no-verify` option and push to the current branch.
20-
- Follow conventional commits, i.e., your commit message should start with `feat:`, `fix:`, etc.
21-
- Make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Cursor) <agent@willbooster.com>`.
22+
- Once you have verified your changes, commit and push them to the current (non-main) branch then create a PR via `gh`.
23+
- Follow the conventional commits; your commit message should start with `feat:`, `fix:`, etc.
24+
- If not specified, make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Cursor) <agent@willbooster.com>`.
2225
- Always create new commits. Avoid using `--amend`.
2326

2427
## Coding Style
2528

26-
- Write comments that explain "why" rather than "what". Avoid explanations that can be understood from the code itself.
27-
- Use stderr for logging debug messages temporarily since stdout output is sometimes omitted.
28-
- When adding new functions or classes, define them below any functions or classes that call them to maintain clear call order.
29-
- Prefer `undefined` over `null` unless explicitly dealing with APIs or libraries that require `null`.
30-
- Always perform existence checks on array due to `noUncheckedIndexedAccess: true`.
29+
- Simplify code as much as possible to eliminate redundancy.
30+
- Design each module with high cohesion, grouping related functionality together.
31+
- Refactor existing large modules into smaller, focused modules when necessary.
32+
- Create well-organized directory structures with low coupling and high cohesion.
33+
- When adding new functions or classes, define them below any functions or classes that call them to maintain a clear top-down call order.
34+
- Write comments that explain "why" rather than "what". Avoid stating what can be understood from the code itself.
35+
- Prefer `undefined` over `null` unless explicitly required by APIs or libraries.
36+
- Prefer using a single template literal for prompts instead of `join()` with an array of strings.

.husky/pre-commit

Lines changed: 0 additions & 1 deletion
This file was deleted.

.husky/pre-push

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#!/bin/bash
2+
13
changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
24

35
run_if_changed() {
@@ -6,7 +8,5 @@ run_if_changed() {
68
fi
79
}
810

9-
run_if_changed "\..+-version" "awk '{print \$1}' .tool-versions | xargs -I{} asdf plugin add {}"
10-
run_if_changed "\..+-version" "asdf plugin update --all"
11-
run_if_changed "\..+-version" "asdf install"
11+
run_if_changed "(mise\.toml|\.mise\.toml|\.tool-versions|\..+-version)" "mise install"
1212
run_if_changed "package\.json" "yarn"

.lefthook/pre-push/check.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
yarn run typecheck

AGENTS.md

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,30 @@
11
## Project Information
22

3-
- Name: firebase-private-key-to-env
3+
- Name: `firebase-private-key-to-env`
44
- Description: undefined
55
- Package Manager: yarn
66

77
## General Instructions
88

9-
- Do not write tests unless explicitly requested.
9+
- Create a new branch if the current branch is `main`.
10+
- Run any `git` commands sequentially.
11+
- Write tests ONLY if explicitly requested.
12+
- Make sure to continue to modify the tests and code until the tests pass.
1013
- When fixing tests, gather debug information through logging and screenshots before modifying the code.
11-
- After making code changes, run `yarn check-all-for-ai` to execute all tests (note: this may take up to 30 minutes), or run `yarn check-for-ai` for type checking and linting only.
14+
- After making code changes, run `yarn check-all-for-ai` to execute all tests (takes up to 1 hour), or run `yarn check-for-ai` for type checking and linting only (takes up to 10 minutes).
1215
- If you are confident your changes will not break any tests, you may use `check-for-ai`.
13-
- Once you have verified your changes, commit them to the non-main branch using the `--no-verify` option and push to the current branch.
14-
- Follow conventional commits, i.e., your commit message should start with `feat:`, `fix:`, etc.
15-
- Make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Codex CLI) <agent@willbooster.com>`.
16+
- Once you have verified your changes, commit and push them to the current (non-main) branch then create a PR via `gh`.
17+
- Follow the conventional commits; your commit message should start with `feat:`, `fix:`, etc.
18+
- If not specified, make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Codex CLI) <agent@willbooster.com>`.
1619
- Always create new commits. Avoid using `--amend`.
1720

1821
## Coding Style
1922

20-
- Write comments that explain "why" rather than "what". Avoid explanations that can be understood from the code itself.
21-
- Use stderr for logging debug messages temporarily since stdout output is sometimes omitted.
22-
- When adding new functions or classes, define them below any functions or classes that call them to maintain clear call order.
23-
- Prefer `undefined` over `null` unless explicitly dealing with APIs or libraries that require `null`.
24-
- Always perform existence checks on array due to `noUncheckedIndexedAccess: true`.
23+
- Simplify code as much as possible to eliminate redundancy.
24+
- Design each module with high cohesion, grouping related functionality together.
25+
- Refactor existing large modules into smaller, focused modules when necessary.
26+
- Create well-organized directory structures with low coupling and high cohesion.
27+
- When adding new functions or classes, define them below any functions or classes that call them to maintain a clear top-down call order.
28+
- Write comments that explain "why" rather than "what". Avoid stating what can be understood from the code itself.
29+
- Prefer `undefined` over `null` unless explicitly required by APIs or libraries.
30+
- Prefer using a single template literal for prompts instead of `join()` with an array of strings.

CLAUDE.md

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,30 @@
11
## Project Information
22

3-
- Name: firebase-private-key-to-env
3+
- Name: `firebase-private-key-to-env`
44
- Description: undefined
55
- Package Manager: yarn
66

77
## General Instructions
88

9-
- Do not write tests unless explicitly requested.
9+
- Create a new branch if the current branch is `main`.
10+
- Run any `git` commands sequentially.
11+
- Write tests ONLY if explicitly requested.
12+
- Make sure to continue to modify the tests and code until the tests pass.
1013
- When fixing tests, gather debug information through logging and screenshots before modifying the code.
11-
- After making code changes, run `yarn check-all-for-ai` to execute all tests (note: this may take up to 30 minutes), or run `yarn check-for-ai` for type checking and linting only.
14+
- After making code changes, run `yarn check-all-for-ai` to execute all tests (takes up to 1 hour), or run `yarn check-for-ai` for type checking and linting only (takes up to 10 minutes).
1215
- If you are confident your changes will not break any tests, you may use `check-for-ai`.
13-
- Once you have verified your changes, commit them to the non-main branch using the `--no-verify` option and push to the current branch.
14-
- Follow conventional commits, i.e., your commit message should start with `feat:`, `fix:`, etc.
15-
- Make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Claude Code) <agent@willbooster.com>`.
16+
- Once you have verified your changes, commit and push them to the current (non-main) branch then create a PR via `gh`.
17+
- Follow the conventional commits; your commit message should start with `feat:`, `fix:`, etc.
18+
- If not specified, make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Claude Code) <agent@willbooster.com>`.
1619
- Always create new commits. Avoid using `--amend`.
1720

1821
## Coding Style
1922

20-
- Write comments that explain "why" rather than "what". Avoid explanations that can be understood from the code itself.
21-
- Use stderr for logging debug messages temporarily since stdout output is sometimes omitted.
22-
- When adding new functions or classes, define them below any functions or classes that call them to maintain clear call order.
23-
- Prefer `undefined` over `null` unless explicitly dealing with APIs or libraries that require `null`.
24-
- Always perform existence checks on array due to `noUncheckedIndexedAccess: true`.
23+
- Simplify code as much as possible to eliminate redundancy.
24+
- Design each module with high cohesion, grouping related functionality together.
25+
- Refactor existing large modules into smaller, focused modules when necessary.
26+
- Create well-organized directory structures with low coupling and high cohesion.
27+
- When adding new functions or classes, define them below any functions or classes that call them to maintain a clear top-down call order.
28+
- Write comments that explain "why" rather than "what". Avoid stating what can be understood from the code itself.
29+
- Prefer `undefined` over `null` unless explicitly required by APIs or libraries.
30+
- Prefer using a single template literal for prompts instead of `join()` with an array of strings.

GEMINI.md

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,30 @@
11
## Project Information
22

3-
- Name: firebase-private-key-to-env
3+
- Name: `firebase-private-key-to-env`
44
- Description: undefined
55
- Package Manager: yarn
66

77
## General Instructions
88

9-
- Do not write tests unless explicitly requested.
9+
- Create a new branch if the current branch is `main`.
10+
- Run any `git` commands sequentially.
11+
- Write tests ONLY if explicitly requested.
12+
- Make sure to continue to modify the tests and code until the tests pass.
1013
- When fixing tests, gather debug information through logging and screenshots before modifying the code.
11-
- After making code changes, run `yarn check-all-for-ai` to execute all tests (note: this may take up to 30 minutes), or run `yarn check-for-ai` for type checking and linting only.
14+
- After making code changes, run `yarn check-all-for-ai` to execute all tests (takes up to 1 hour), or run `yarn check-for-ai` for type checking and linting only (takes up to 10 minutes).
1215
- If you are confident your changes will not break any tests, you may use `check-for-ai`.
13-
- Once you have verified your changes, commit them to the non-main branch using the `--no-verify` option and push to the current branch.
14-
- Follow conventional commits, i.e., your commit message should start with `feat:`, `fix:`, etc.
15-
- Make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Gemini CLI) <agent@willbooster.com>`.
16+
- Once you have verified your changes, commit and push them to the current (non-main) branch then create a PR via `gh`.
17+
- Follow the conventional commits; your commit message should start with `feat:`, `fix:`, etc.
18+
- If not specified, make sure to add a new line at the end of your commit message with: `Co-authored-by: WillBooster (Gemini CLI) <agent@willbooster.com>`.
1619
- Always create new commits. Avoid using `--amend`.
1720

1821
## Coding Style
1922

20-
- Write comments that explain "why" rather than "what". Avoid explanations that can be understood from the code itself.
21-
- Use stderr for logging debug messages temporarily since stdout output is sometimes omitted.
22-
- When adding new functions or classes, define them below any functions or classes that call them to maintain clear call order.
23-
- Prefer `undefined` over `null` unless explicitly dealing with APIs or libraries that require `null`.
24-
- Always perform existence checks on array due to `noUncheckedIndexedAccess: true`.
23+
- Simplify code as much as possible to eliminate redundancy.
24+
- Design each module with high cohesion, grouping related functionality together.
25+
- Refactor existing large modules into smaller, focused modules when necessary.
26+
- Create well-organized directory structures with low coupling and high cohesion.
27+
- When adding new functions or classes, define them below any functions or classes that call them to maintain a clear top-down call order.
28+
- Write comments that explain "why" rather than "what". Avoid stating what can be understood from the code itself.
29+
- Prefer `undefined` over `null` unless explicitly required by APIs or libraries.
30+
- Prefer using a single template literal for prompts instead of `join()` with an array of strings.

lefthook.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
post-merge:
2+
scripts:
3+
prepare.sh:
4+
runner: bash
5+
pre-push:
6+
scripts:
7+
check.sh:
8+
runner: bash
9+
pre-commit:
10+
commands:
11+
cleanup:
12+
glob: '*.{astro,cjs,css,cts,gql,htm,html,java,js,json,json5,jsonc,jsx,md,mjs,mts,scss,svelte,ts,tsx,vue,yaml,yml}'
13+
run: yarn run format && yarn run lint-fix && git add -- {staged_files}
14+
check-migrations:
15+
glob: '**/migration.sql'
16+
run: |-
17+
if grep -q 'Warnings:' {staged_files}; then
18+
echo "Migration SQL files ({staged_files}) contain warnings! Please solve the warnings and commit again."
19+
exit 1
20+
fi

package.json

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
{
22
"name": "firebase-private-key-to-env",
33
"version": "1.0.0",
4-
"repository": "github:WillBooster/firebase-private-key-to-env",
4+
"repository": {
5+
"type": "git",
6+
"url": "git+https://github.com/WillBooster/firebase-private-key-to-env.git"
7+
},
58
"license": "Apache-2.0",
69
"author": "WillBooster Inc.",
710
"main": "src/index.ts",
811
"scripts": {
912
"check-all-for-ai": "yarn check-for-ai && yarn test",
10-
"check-for-ai": "yarn install > /dev/null && yarn format > /dev/null 2> /dev/null || true && yarn lint-fix --quiet && yarn typecheck",
13+
"check-for-ai": "yarn install > /dev/null && yarn format > /dev/null 2> /dev/null || true && yarn typecheck && yarn lint-fix --quiet",
1114
"cleanup": "yarn format && yarn lint-fix",
1215
"format": "sort-package-json && yarn prettify",
13-
"postinstall": "husky || true",
1416
"lint": "eslint --color",
1517
"lint-fix": "yarn lint --fix",
16-
"prepack": "pinst --disable",
17-
"postpack": "pinst --enable",
18-
"prepare": "husky || true",
18+
"prepare": "lefthook install || true",
1919
"prettify": "prettier --cache --color --write \"**/{.*/,}*.{cjs,css,cts,htm,html,java,js,json,json5,jsonc,jsx,md,mjs,mts,scss,ts,tsx,vue,yaml,yml}\" \"!**/test{-,/}fixtures/**\" || true",
2020
"start": "babel-node -x .js,.jsx,.es6,.es,.ts src/index.ts",
2121
"test": "echo \"No tests configured\"",
22-
"typecheck": "tsc --noEmit --Pretty"
22+
"typecheck": "tsc --noEmit"
2323
},
2424
"prettier": "@willbooster/prettier-config",
2525
"dependencies": {
@@ -34,14 +34,17 @@
3434
"@babel/plugin-proposal-numeric-separator": "7.18.6",
3535
"@babel/preset-env": "7.29.2",
3636
"@babel/preset-typescript": "7.28.5",
37+
"@eslint/js": "10.0.1",
38+
"@tsconfig/node-lts": "24.0.0",
39+
"@tsconfig/node-ts": "23.6.4",
3740
"@types/eslint": "9.6.1",
3841
"@types/micromatch": "4.0.10",
3942
"@types/node": "24.12.0",
4043
"@types/yargs": "17.0.35",
41-
"@willbooster/eslint-config-ts": "11.4.12",
42-
"@willbooster/prettier-config": "10.2.4",
43-
"eslint": "9.39.1",
44-
"eslint-config-flat-gitignore": "2.2.1",
44+
"@willbooster/eslint-config-ts": "11.5.0",
45+
"@willbooster/prettier-config": "10.3.0",
46+
"eslint": "10.1.0",
47+
"eslint-config-flat-gitignore": "2.3.0",
4548
"eslint-config-prettier": "10.1.8",
4649
"eslint-import-resolver-typescript": "4.4.4",
4750
"eslint-plugin-import-x": "4.16.2",
@@ -50,15 +53,14 @@
5053
"eslint-plugin-unicorn": "63.0.0",
5154
"eslint-plugin-unused-imports": "4.4.1",
5255
"globals": "17.4.0",
53-
"husky": "9.1.7",
56+
"lefthook": "2.1.4",
5457
"lint-staged": "16.4.0",
5558
"micromatch": "4.0.8",
56-
"pinst": "3.0.0",
5759
"prettier": "3.8.1",
5860
"prettier-plugin-java": "2.8.1",
5961
"sort-package-json": "3.6.1",
60-
"typescript": "5.9.3",
61-
"typescript-eslint": "8.57.1"
62+
"typescript": "^5",
63+
"typescript-eslint": "8.57.2"
6264
},
6365
"packageManager": "yarn@4.13.0",
6466
"publishConfig": {

0 commit comments

Comments
 (0)