diff --git a/DELETE_ME.md b/DELETE_ME.md deleted file mode 100644 index cd67c9a..0000000 --- a/DELETE_ME.md +++ /dev/null @@ -1,19 +0,0 @@ -## Checklist - -- [ ] Update all `TODO:` -- [ ] Update all `package-name` occurences -- [ ] Add a LICENSE.md at the root -- [ ] Have gh cli installed -- [ ] Work on the integration logic -- [ ] Work on docs - - [ ] JSDoc - - [ ] Package README -- [ ] Format/lint (`pnpm lint:fix`) -- [ ] Setup GitHub repository -- [ ] Release (see below) -- [ ] Share! - -To create a release: -- [ ] `pnpm run changeset` -- [ ] Commit and push -- [ ] `pnpm release` diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..151aa33 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 MatthiesenXYZ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 390e373..4bbdb8e 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,30 @@ -# package-name +# `Astro-Gists` -TODO:description +Allows the user to import GitHub Gists by ID through an Astro Component and Octokit To see how to get started, check out the [package README](./package/README.md) +## Contributing + +This package is structured as a monorepo: + +- `playground` contains code for testing the package +- `package` contains the actual package + +Install dependencies using pnpm: + +```bash +pnpm i --frozen-lockfile +``` + +Start the playground: + +```bash +pnpm playground:dev +``` + +You can now edit files in `package`. Please note that making changes to those files may require restarting the playground dev server. + ## Licensing -[MIT Licensed](./LICENSE). Made with ❤️ by [TODO:user](https://github.com/TODO:github-user). +[MIT Licensed](./LICENSE). Made with ❤️ by [AdamMatthiesen](https://github.com/AdamMatthiesen) Under [MatthiesenXYZ](https://github.com/MatthiesenXYZ). diff --git a/package.json b/package.json index 33d4a6f..bb7634a 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,6 @@ "scripts": { "playground:dev": "pnpm --filter playground dev", "changeset": "changeset", - "release": "node scripts/release.mjs", "lint": "biome check .", "lint:fix": "biome check --apply ." }, diff --git a/package/LICENSE b/package/LICENSE new file mode 100644 index 0000000..151aa33 --- /dev/null +++ b/package/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 MatthiesenXYZ + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/package/README.md b/package/README.md index 8c31139..0f71c67 100644 --- a/package/README.md +++ b/package/README.md @@ -1,6 +1,6 @@ -# `package-name` +# `Astro-Gists` -This is an [Astro integration](https://docs.astro.build/en/guides/integrations-guide/) that TODO:description +This is an [Astro integration](https://docs.astro.build/en/guides/integrations-guide/) that allows the user to import GitHub Gists by ID through an Astro Component and Octokit ## Usage @@ -13,15 +13,15 @@ TODO: Install the integration **automatically** using the Astro CLI: ```bash -pnpm astro add package-name +pnpm astro add @matthiesenxyz/astro-gists ``` ```bash -npx astro add package-name +npx astro add @matthiesenxyz/astro-gists ``` ```bash -yarn astro add package-name +yarn astro add @matthiesenxyz/astro-gists ``` Or install it **manually**: @@ -29,21 +29,21 @@ Or install it **manually**: 1. Install the required dependencies ```bash -pnpm add package-name +pnpm add @matthiesenxyz/astro-gists ``` ```bash -npm install package-name +npm install @matthiesenxyz/astro-gists ``` ```bash -yarn add package-name +yarn add @matthiesenxyz/astro-gists ``` 2. Add the integration to your astro config ```diff -+import integration from "package-name"; ++import integration from "@matthiesenxyz/astro-gists"; export default defineConfig({ integrations: [ @@ -56,30 +56,9 @@ export default defineConfig({ TODO:configuration -## Contributing - -This package is structured as a monorepo: - -- `playground` contains code for testing the package -- `package` contains the actual package - -Install dependencies using pnpm: - -```bash -pnpm i --frozen-lockfile -``` - -Start the playground: - -```bash -pnpm playground:dev -``` - -You can now edit files in `package`. Please note that making changes to those files may require restarting the playground dev server. - ## Licensing -[MIT Licensed](https://github.com/TODO:/blob/main/LICENSE). Made with ❤️ by [TODO:](https://github.com/TODO:). +[MIT Licensed](./LICENSE). Made with ❤️ by [AdamMatthiesen](https://github.com/AdamMatthiesen) Under [MatthiesenXYZ](https://github.com/MatthiesenXYZ). ## Acknowledgements diff --git a/package/package.json b/package/package.json index ca6eb55..30c5782 100644 --- a/package/package.json +++ b/package/package.json @@ -1,7 +1,7 @@ { "name": "@matthiesenxyz/astro-gists", "version": "0.0.0", - "description": "TODO:", + "description": "Allows the user to import GitHub Gists by ID through an Astro Component and Octokit", "author": { "email": "adam@matthiesen.xyz", "name": "Adam Matthiesen", diff --git a/package/src/integration.ts b/package/src/integration.ts index e3787ca..6a802ce 100644 --- a/package/src/integration.ts +++ b/package/src/integration.ts @@ -2,7 +2,7 @@ import type { AstroIntegration } from "astro"; export const integration = (): AstroIntegration => { return { - name: "package-name", + name: "@matthiesenxyz/astro-gists", hooks: {}, }; }; diff --git a/playground/astro.config.mjs b/playground/astro.config.mjs index bcd7edd..6bb2af9 100644 --- a/playground/astro.config.mjs +++ b/playground/astro.config.mjs @@ -1,8 +1,8 @@ import tailwind from "@astrojs/tailwind"; import { defineConfig } from "astro/config"; -import packageName from "package-name"; +import integration from "@matthiesenxyz/astro-gists"; // https://astro.build/config export default defineConfig({ - integrations: [tailwind(), packageName()], + integrations: [tailwind(), integration()], }); diff --git a/playground/package.json b/playground/package.json index e1d219b..2ee66ee 100644 --- a/playground/package.json +++ b/playground/package.json @@ -12,13 +12,13 @@ }, "dependencies": { "@astrojs/tailwind": "^5.1.0", - "astro": "^4.4.0", - "package-name": "workspace:*", + "astro": "^4.4.4", + "@matthiesenxyz/astro-gists": "workspace:*", "tailwindcss": "^3.4.1" }, "devDependencies": { - "@astrojs/check": "^0.5.4", - "@types/node": "^20.11.19", + "@astrojs/check": "^0.5.5", + "@types/node": "^20.11.20", "typescript": "^5.3.3" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 05086f2..d4d8667 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -28,23 +28,23 @@ importers: dependencies: '@astrojs/tailwind': specifier: ^5.1.0 - version: 5.1.0(astro@4.4.0)(tailwindcss@3.4.1) - astro: - specifier: ^4.4.0 - version: 4.4.0(@types/node@20.11.19)(typescript@5.3.3) - package-name: + version: 5.1.0(astro@4.4.4)(tailwindcss@3.4.1) + '@matthiesenxyz/astro-gists': specifier: workspace:* version: link:../package + astro: + specifier: ^4.4.4 + version: 4.4.4(@types/node@20.11.20)(typescript@5.3.3) tailwindcss: specifier: ^3.4.1 version: 3.4.1 devDependencies: '@astrojs/check': - specifier: ^0.5.4 - version: 0.5.4(typescript@5.3.3) + specifier: ^0.5.5 + version: 0.5.5(typescript@5.3.3) '@types/node': - specifier: ^20.11.19 - version: 20.11.19 + specifier: ^20.11.20 + version: 20.11.20 typescript: specifier: ^5.3.3 version: 5.3.3 @@ -64,13 +64,13 @@ packages: '@jridgewell/trace-mapping': 0.3.21 dev: false - /@astrojs/check@0.5.4(typescript@5.3.3): - resolution: {integrity: sha512-BFClaLEuRzpfF9wrmh9KDS5gmRHGhkVN7qvm6tWPBvUxOADXiNz+hzrYFvZVqXTXhHjS0Ern1g3yHifgu0zsmw==} + /@astrojs/check@0.5.5(typescript@5.3.3): + resolution: {integrity: sha512-05LjyUB14Cv2mkLNqY4r2igI2eu0bq/HcKCfFNIoBPLyNW7VUDr9tciD9VJXXT3s0e6JHneIs6bQW5ipjmaRcw==} hasBin: true peerDependencies: typescript: ^5.0.0 dependencies: - '@astrojs/language-server': 2.7.4(typescript@5.3.3) + '@astrojs/language-server': 2.7.5(typescript@5.3.3) chokidar: 3.5.3 fast-glob: 3.3.2 kleur: 4.1.5 @@ -92,8 +92,8 @@ packages: resolution: {integrity: sha512-06DD2ZnItMwUnH81LBLco3tWjcZ1lGU9rLCCBaeUCGYe9cI0wKyY2W3kDyoW1I6GmcWgt1fu+D1CTvz+FIKf8A==} dev: false - /@astrojs/language-server@2.7.4(typescript@5.3.3): - resolution: {integrity: sha512-U317ZKx5VXg2Sy6iPgYOliOZ10Ji/eo8MGFCry2/yT+rYTfb81HbrSWUu9nsZzpFK66So5aprQutRWWM/m7mPQ==} + /@astrojs/language-server@2.7.5(typescript@5.3.3): + resolution: {integrity: sha512-iMfZ3UaqTgIL+z/eUDOppRa1bGUAteWRihbWq5mGAgvr/hu384ZXUKJcqV3BBux0MBsRXwjxzrC2dJu9IpAaoA==} hasBin: true peerDependencies: prettier: ^3.0.0 @@ -112,12 +112,12 @@ packages: '@volar/language-service': 2.0.4 '@volar/typescript': 2.0.4 fast-glob: 3.3.2 - volar-service-css: 0.0.29(@volar/language-service@2.0.4) - volar-service-emmet: 0.0.29(@volar/language-service@2.0.4) - volar-service-html: 0.0.29(@volar/language-service@2.0.4) - volar-service-prettier: 0.0.29(@volar/language-service@2.0.4) - volar-service-typescript: 0.0.29(@volar/language-service@2.0.4)(@volar/typescript@2.0.4) - volar-service-typescript-twoslash-queries: 0.0.29(@volar/language-service@2.0.4) + volar-service-css: 0.0.30(@volar/language-service@2.0.4) + volar-service-emmet: 0.0.30(@volar/language-service@2.0.4) + volar-service-html: 0.0.30(@volar/language-service@2.0.4) + volar-service-prettier: 0.0.30(@volar/language-service@2.0.4) + volar-service-typescript: 0.0.30(@volar/language-service@2.0.4)(@volar/typescript@2.0.4) + volar-service-typescript-twoslash-queries: 0.0.30(@volar/language-service@2.0.4) vscode-html-languageservice: 5.1.2 vscode-uri: 3.0.8 transitivePeerDependencies: @@ -173,13 +173,13 @@ packages: prismjs: 1.29.0 dev: false - /@astrojs/tailwind@5.1.0(astro@4.4.0)(tailwindcss@3.4.1): + /@astrojs/tailwind@5.1.0(astro@4.4.4)(tailwindcss@3.4.1): resolution: {integrity: sha512-BJoCDKuWhU9FT2qYg+fr6Nfb3qP4ShtyjXGHKA/4mHN94z7BGcmauQK23iy+YH5qWvTnhqkd6mQPQ1yTZTe9Ig==} peerDependencies: astro: ^3.0.0 || ^4.0.0 tailwindcss: ^3.0.24 dependencies: - astro: 4.4.0(@types/node@20.11.19)(typescript@5.3.3) + astro: 4.4.4(@types/node@20.11.20)(typescript@5.3.3) autoprefixer: 10.4.16(postcss@8.4.33) postcss: 8.4.33 postcss-load-config: 4.0.2(postcss@8.4.33) @@ -1191,8 +1191,8 @@ packages: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} dev: true - /@types/node@20.11.19: - resolution: {integrity: sha512-7xMnVEcZFu0DikYjWOlRq7NTPETrm7teqUT2WkQjrTIkEgUyyGdWsj/Zg8bEJt5TNklzbPD1X3fqfsHw3SpapQ==} + /@types/node@20.11.20: + resolution: {integrity: sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==} dependencies: undici-types: 5.26.5 @@ -1506,8 +1506,8 @@ packages: - typescript dev: false - /astro@4.4.0(@types/node@20.11.19)(typescript@5.3.3): - resolution: {integrity: sha512-JAsMrm1Z6W4Iqg9Q7LW/6lCXrqa4jndEOlR/yu7NGNP0BrPwSM8i4+yzya6hxgsNvyyVK8ywthaNhFmqd8Z+cg==} + /astro@4.4.4(@types/node@20.11.20)(typescript@5.3.3): + resolution: {integrity: sha512-EZrDTN888w4sFKqavGsHu8jSaymyxNwnoqIq5NKlMG9WNU/Xn4Yn41pUdBuAOrgNzRp1NyXXhhV6GV1pN71V2Q==} engines: {node: '>=18.14.1', npm: '>=6.14.0'} hasBin: true dependencies: @@ -1563,7 +1563,6 @@ packages: rehype: 13.0.1 resolve: 1.22.8 semver: 7.5.4 - server-destroy: 1.0.1 shikiji: 0.9.19 shikiji-core: 0.9.19 string-width: 7.0.0 @@ -1571,7 +1570,7 @@ packages: tsconfck: 3.0.1(typescript@5.3.3) unist-util-visit: 5.0.0 vfile: 6.0.1 - vite: 5.1.3(@types/node@20.11.19) + vite: 5.1.3(@types/node@20.11.20) vitefu: 0.2.5(vite@5.1.3) which-pm: 2.1.1 yargs-parser: 21.1.1 @@ -5292,13 +5291,13 @@ packages: optional: true dependencies: esbuild: 0.19.11 - postcss: 8.4.33 + postcss: 8.4.35 rollup: 4.9.5 optionalDependencies: fsevents: 2.3.3 dev: false - /vite@5.1.3(@types/node@20.11.19): + /vite@5.1.3(@types/node@20.11.20): resolution: {integrity: sha512-UfmUD36DKkqhi/F75RrxvPpry+9+tTkrXfMNZD+SboZqBCMsxKtO52XeGzzuh7ioz+Eo/SYDBbdb0Z7vgcDJew==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -5326,7 +5325,7 @@ packages: terser: optional: true dependencies: - '@types/node': 20.11.19 + '@types/node': 20.11.20 esbuild: 0.19.11 postcss: 8.4.35 rollup: 4.9.5 @@ -5353,11 +5352,11 @@ packages: vite: optional: true dependencies: - vite: 5.1.3(@types/node@20.11.19) + vite: 5.1.3(@types/node@20.11.20) dev: false - /volar-service-css@0.0.29(@volar/language-service@2.0.4): - resolution: {integrity: sha512-2kNdgEYEiLeeer3wkagNBVDPa3Zj7mBDeM7D3iYmBXA0LCwd2tQL3eASzcDW9Gvac1g478UtptK468GxzUAEcA==} + /volar-service-css@0.0.30(@volar/language-service@2.0.4): + resolution: {integrity: sha512-jui+1N0HBfjW43tRfhyZp0axhBee4997BRyX4os8xQm/7cjD2KjAuyz92nMIPRt1QDoG4/7uQT28xNhy0TPJTA==} peerDependencies: '@volar/language-service': ~2.0.1 peerDependenciesMeta: @@ -5369,8 +5368,8 @@ packages: vscode-uri: 3.0.8 dev: true - /volar-service-emmet@0.0.29(@volar/language-service@2.0.4): - resolution: {integrity: sha512-sXRMfQ970lpOQxUcKH9B4DqE7FCNhPy6V4m3gw+kgH17mADQ2rdL63b8osXFy5bnAMBcsXRhtJXJPmh/LgZXEw==} + /volar-service-emmet@0.0.30(@volar/language-service@2.0.4): + resolution: {integrity: sha512-HEeIrmqQ/DTfuQDI9ER5+YReXXjE9f7W6MlBmn5biUuPyizVTGfuILN8pJhmYvmPHCA7qHhU7CJqwE9DAh9AJg==} peerDependencies: '@volar/language-service': ~2.0.1 peerDependenciesMeta: @@ -5379,11 +5378,11 @@ packages: dependencies: '@volar/language-service': 2.0.4 '@vscode/emmet-helper': 2.9.2 - volar-service-html: 0.0.29(@volar/language-service@2.0.4) + volar-service-html: 0.0.30(@volar/language-service@2.0.4) dev: true - /volar-service-html@0.0.29(@volar/language-service@2.0.4): - resolution: {integrity: sha512-ctTSU46KCLxcaR53mAod2wBWSEIXGdXdejqHEDPSX33H5rA2X89zyYEpuk9BOVzIHG8G8rggVXCGnGaXxmYrCw==} + /volar-service-html@0.0.30(@volar/language-service@2.0.4): + resolution: {integrity: sha512-wW3TEeRTeHv/3mC8Ik6T62SwewMWFungb8ydyEK/2GDHEntBEG/J9wtuh01/J0kYqPerhlT9zhdGB6PGYHAGuA==} peerDependencies: '@volar/language-service': ~2.0.1 peerDependenciesMeta: @@ -5395,8 +5394,8 @@ packages: vscode-uri: 3.0.8 dev: true - /volar-service-prettier@0.0.29(@volar/language-service@2.0.4): - resolution: {integrity: sha512-GxcDKfiVv3fc4XUtUOkQpX0QlFjWppRCVWIBp751gOKJwDex142xMlbTxP9la9tollbmj2O/tVUrqqLDGQ+Lsg==} + /volar-service-prettier@0.0.30(@volar/language-service@2.0.4): + resolution: {integrity: sha512-Qdc5Zc0y4hJmJbpIQ52cSDjs0uvVug/e2nuL/XZWPJM6Cr5/3RjjoRVKtDQbKItFYlGk+JH+LSXvwQeD5TXZqg==} peerDependencies: '@volar/language-service': ~2.0.1 prettier: ^2.2 || ^3.0 @@ -5410,8 +5409,8 @@ packages: vscode-uri: 3.0.8 dev: true - /volar-service-typescript-twoslash-queries@0.0.29(@volar/language-service@2.0.4): - resolution: {integrity: sha512-hdI8ZO1Wc/I5+iwKKnOfXW7ktpBe0qLoXz5+8viS6aV9gycKSAKAs6sayLTATQZcZ1EAESUqTqGS/vJOUgZOsg==} + /volar-service-typescript-twoslash-queries@0.0.30(@volar/language-service@2.0.4): + resolution: {integrity: sha512-ahj6woBxhkZu7icQR58x5TnUaS8ZRKn7a+UvY+andmiTWsOaSu85zj36+LPZgZQi1MG+BtjNwUjKoxtZiN51PA==} peerDependencies: '@volar/language-service': ~2.0.1 peerDependenciesMeta: @@ -5421,8 +5420,8 @@ packages: '@volar/language-service': 2.0.4 dev: true - /volar-service-typescript@0.0.29(@volar/language-service@2.0.4)(@volar/typescript@2.0.4): - resolution: {integrity: sha512-ssBhGT0Wrh670NRTrLoikzoRbszd72jIa02IKbrfI9QIIONvygOmIJ9jSqj4jxHEWz/KSCgCEhCyR7hEH80kGg==} + /volar-service-typescript@0.0.30(@volar/language-service@2.0.4)(@volar/typescript@2.0.4): + resolution: {integrity: sha512-jA8c0Mhy9rgAsrgtwocK95Smws1M2E0MxlQ/SVo/rmOGH32cX9UGgI0IENWKa3yagp/khfoemOIQDz/KNhI3zg==} peerDependencies: '@volar/language-service': ~2.0.1 '@volar/typescript': ~2.0.1 diff --git a/scripts/release.mjs b/scripts/release.mjs deleted file mode 100644 index 5f0f9fe..0000000 --- a/scripts/release.mjs +++ /dev/null @@ -1,50 +0,0 @@ -import { spawn } from "node:child_process"; -import { resolve } from "node:path"; - -/** - * - * @param {string} command - * @param {...Array} args - * - * @returns {Promise} - */ -const run = async (command, ...args) => { - const cwd = resolve(); - return new Promise((resolve) => { - const cmd = spawn(command, args, { - stdio: ["inherit", "pipe", "pipe"], // Inherit stdin, pipe stdout, pipe stderr - shell: true, - cwd, - }); - - let output = ""; - - cmd.stdout.on("data", (data) => { - process.stdout.write(data.toString()); - output += data.toString(); - }); - - cmd.stderr.on("data", (data) => { - process.stderr.write(data.toString()); - }); - - cmd.on("close", () => { - resolve(output); - }); - }); -}; - -const main = async () => { - await run("pnpm changeset version"); - await run("git add ."); - await run('git commit -m "chore: update version"'); - await run("git push"); - await run("pnpm changeset publish"); - await run("git push --follow-tags"); - const tag = (await run("git describe --abbrev=0")).replace("\n", ""); - await run( - `gh release create ${tag} --title ${tag} --notes "Please refer to [CHANGELOG.md](https://github.com/TODO:update/blob/main/package/CHANGELOG.md) for details."`, - ); -}; - -main();