-
Notifications
You must be signed in to change notification settings - Fork 1
Add pull request template #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
494e671
swap to wxt
balloman 627a7d9
swap to oxc
balloman 67dc92c
add icon
balloman 2e1c6ce
update readme
balloman 1ecad87
add pull request template
balloman 7d62ad5
add CI workflow
balloman 21225b9
use mise in CI
balloman 29724eb
move api key to .env
balloman File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| WXT_GOOGLE_MAPS_API_KEY=your_google_maps_embed_api_key |
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| ## Summary | ||
|
|
||
| <!-- Briefly describe the change. --> | ||
|
|
||
| ## Notes | ||
|
|
||
| <!-- Anything worth remembering: tradeoffs, edge cases, follow-ups, screenshots, etc. --> | ||
|
|
||
| ## Testing | ||
|
|
||
| <!-- Commands run, manual checks, or "Not run". --> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,33 @@ | ||
| name: CI | ||
|
|
||
| on: | ||
| pull_request: | ||
| push: | ||
| branches: [main] | ||
|
|
||
| permissions: {} | ||
|
|
||
| jobs: | ||
| format: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v6 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - uses: jdx/mise-action@v4 | ||
|
|
||
| - run: pnpm install --frozen-lockfile | ||
| - run: pnpm run format:check | ||
|
|
||
| lint: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v6 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - uses: jdx/mise-action@v4 | ||
|
|
||
| - run: pnpm install --frozen-lockfile | ||
| - run: pnpm run lint | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| { | ||
| "$schema": "./node_modules/oxfmt/configuration_schema.json", | ||
| "sortImports": true, | ||
| "useTabs": true | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| { | ||
| "$schema": "./node_modules/oxlint/configuration_schema.json", | ||
| "env": { | ||
| "browser": true, | ||
| "es6": true, | ||
| "node": true | ||
| }, | ||
| "plugins": ["eslint", "typescript", "unicorn", "oxc", "import", "jsx-a11y"], | ||
| "globals": { | ||
| "chrome": "readonly" | ||
| }, | ||
| "ignorePatterns": ["watch.js", "dist/**", "**/*.css"] | ||
| } |
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,16 +1,9 @@ | ||
| { | ||
| "eslint.validate": [ | ||
| "javascript", | ||
| "javascriptreact", | ||
| "typescript", | ||
| "typescriptreact", | ||
| ], | ||
| "editor.codeActionsOnSave": { | ||
| "source.organizeImports": "explicit", | ||
| "source.fixAll.eslint": "explicit" | ||
| }, | ||
| "javascript.preferences.quoteStyle": "single", | ||
| "typescript.preferences.quoteStyle": "single", | ||
| "prettier.singleQuote": true, | ||
| "debug.internalConsoleOptions": "neverOpen", | ||
| } | ||
| "editor.codeActionsOnSave": { | ||
| "source.organizeImports": "explicit", | ||
| "source.fixAll.oxlint": "explicit" | ||
| }, | ||
| "editor.defaultFormatter": "oxc.oxc-vscode", | ||
| "debug.internalConsoleOptions": "neverOpen", | ||
| "typescript.tsdk": "node_modules/typescript/lib" | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,24 +1,48 @@ | ||
| # TransitEasy | ||
| This repository contains a chrome extension that lets you see the transit times for streeteasy properties | ||
|
|
||
| TransitEasy is a Chrome extension that shows transit directions for StreetEasy listings. | ||
|
|
||
| ## Features | ||
|
|
||
| - Save a work address in extension storage | ||
| - Inject a Google Maps transit iframe into StreetEasy listing pages | ||
| - Rebuild automatically during development with WXT | ||
|
|
||
| ## Development | ||
|
|
||
| 1. Install dependencies: | ||
| `pnpm install` | ||
| 2. Start the watch build: | ||
| 2. Create your local environment file: | ||
| `cp .env.example .env` | ||
| 3. Set `WXT_GOOGLE_MAPS_API_KEY` in `.env` to a Google Maps Embed API key. | ||
| 4. Start the watch build: | ||
| `pnpm dev` | ||
| 3. In Chrome, open `chrome://extensions`, enable Developer mode, and click Load unpacked. | ||
| 4. Select the `dist` folder in this repository. | ||
| 5. In Chrome, open `chrome://extensions`, enable Developer mode, and click Load unpacked. | ||
| 6. Select the `.output` folder in this repository. | ||
|
|
||
| The extension will rebuild automatically while `pnpm dev` is running. Use `pnpm build` for a one-off production build. | ||
|
|
||
| Available scripts: | ||
|
|
||
| - `pnpm dev` - start the WXT dev server | ||
| - `pnpm build` - create a production build | ||
| - `pnpm zip` - package the extension | ||
| - `pnpm lint` - run oxlint | ||
| - `pnpm lint:fix` - fix lint issues | ||
| - `pnpm format` - format the code | ||
| - `pnpm format:check` - check formatting | ||
|
|
||
| ## Demo | ||
|
|
||
| 1. Select an address to use for work. | ||
|  | ||
|  | ||
| 2. Scroll down on StreetEasy | ||
|  | ||
|  | ||
|
|
||
| ## Stack | ||
|
|
||
| # Stack | ||
| - SolidJS | ||
| - Vite | ||
| - HopeUI | ||
| - Google MapsEmbed API | ||
| - WXT | ||
| - Tailwind CSS | ||
| - daisyUI | ||
| - Google Maps Embed API |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| [tools] | ||
| node = "24" | ||
| pnpm = "11" |
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,46 +1,34 @@ | ||
| { | ||
| "name": "transit-easy", | ||
| "displayName": "TransitEasy", | ||
| "version": "1.3.0", | ||
| "description": "Chrome Extension that allows you to see transit directions for listings on StreetEasy", | ||
| "license": "MIT", | ||
| "scripts": { | ||
| "dev": "vite build -w", | ||
| "build": "vite build", | ||
| "lint": "eslint . --fix -c .eslintrc --ext js,ts --ignore-pattern='!.*'", | ||
| "dev:nodemon": "nodemon", | ||
| "build:noemit": "tsc --noEmit && vite build" | ||
| }, | ||
| "type": "module", | ||
| "dependencies": { | ||
| "@hope-ui/solid": "^0.6.7", | ||
| "@stitches/core": "^1.2.8", | ||
| "solid-js": "^1.7.5", | ||
| "solid-transition-group": "^0.2.2" | ||
| }, | ||
| "devDependencies": { | ||
| "@crxjs/vite-plugin": "2.2.0", | ||
| "@trivago/prettier-plugin-sort-imports": "^4.1.1", | ||
| "@types/chrome": "0.0.235", | ||
| "@types/node": "20.1.0", | ||
| "@typescript-eslint/eslint-plugin": "5.59.2", | ||
| "@typescript-eslint/parser": "5.59.2", | ||
| "autoprefixer": "^10.4.14", | ||
| "babel-preset-solid": "^1.7.4", | ||
| "eslint": "8.40.0", | ||
| "eslint-config-prettier": "^8.8.0", | ||
| "eslint-plugin-import": "^2.27.5", | ||
| "eslint-plugin-jsx-a11y": "6.7.1", | ||
| "eslint-plugin-prettier": "4.2.1", | ||
| "eslint-plugin-solid": "0.12.1", | ||
| "eslint-plugin-tailwindcss": "^3.11.0", | ||
| "nodemon": "2.0.22", | ||
| "postcss": "^8.4.23", | ||
| "prettier": "2.8.8", | ||
| "tailwindcss": "^3.4.17", | ||
| "ts-node": "10.9.1", | ||
| "typescript": "5.0.4", | ||
| "vite": "4.3.5", | ||
| "vite-plugin-solid": "^2.7.0" | ||
| } | ||
| "name": "transit-easy", | ||
| "displayName": "TransitEasy", | ||
| "version": "2.0.0", | ||
| "private": "true", | ||
| "description": "Chrome Extension that allows you to see transit directions for listings on StreetEasy", | ||
| "license": "MIT", | ||
| "type": "module", | ||
| "scripts": { | ||
| "dev": "wxt", | ||
| "build": "wxt build", | ||
| "zip": "wxt zip", | ||
| "lint": "oxlint", | ||
| "lint:fix": "oxlint --fix", | ||
| "format": "oxfmt", | ||
| "format:check": "oxfmt --check", | ||
| "postinstall": "wxt prepare" | ||
| }, | ||
| "dependencies": { | ||
| "daisyui": "^5.5.20", | ||
| "solid-js": "^1.9.9", | ||
| "solid-transition-group": "^0.2.2" | ||
| }, | ||
| "devDependencies": { | ||
| "@tailwindcss/vite": "^4.3.0", | ||
| "@types/node": "^24", | ||
| "@wxt-dev/module-solid": "^1.1.4", | ||
| "oxfmt": "^0.57.0", | ||
| "oxlint": "^1.72.0", | ||
| "tailwindcss": "^4.3.0", | ||
| "typescript": "6.0.3", | ||
| "wxt": "^0.20.26" | ||
| } | ||
| } |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟡 Minor | ⚡ Quick win
Set
persist-credentials: falseon checkout.Static analysis (zizmor) flags both
actions/checkout@v6steps for not disabling credential persistence. Sincepermissions: {}already limits token scope, risk is low, but this is a cheap hardening step to prevent the token from lingering in the git config for subsequent steps (e.g., pnpm install scripts).🔒 Proposed fix
Also applies to: 29-29
🧰 Tools
🪛 zizmor (1.26.1)
[warning] 14-14: credential persistence through GitHub Actions artifacts (artipacked): does not set persist-credentials: false
(artipacked)
🤖 Prompt for AI Agents
Source: Linters/SAST tools