From 536758fe38cea57557e13c34618ec0c406d773b2 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Mon, 30 Dec 2024 18:38:55 +0000 Subject: [PATCH] Update GitHub template files --- .changeset/README.md | 8 + .changeset/config.json | 14 ++ .dockerignore | 11 ++ .github/labeler.yaml | 34 ++++ .github/workflows/deployment.yaml | 201 +++++++++++++++++++++ .github/workflows/format.yaml | 37 ++++ .github/workflows/labeler.yaml | 48 +++++ .github/workflows/publish.yaml | 164 +++++++++++++++++ .github/workflows/release.yaml | 40 ++++ .github/workflows/welcome-bot.yaml | 36 ++++ .gitignore | 141 +++++++++++++-- .prettierignore | 44 +++++ .prettierrc | 8 + Dockerfile | 4 + manifest/certificate.yaml | 12 ++ manifest/deployment.yaml | 21 +++ manifest/ingress.yaml | 22 +++ manifest/namespace.yaml | 4 + manifest/service.yaml | 13 ++ package.json | 27 ++- packages/starlight-sidebar-swipe/README.md | 4 +- pnpm-workspace.yaml | 4 +- 22 files changed, 870 insertions(+), 27 deletions(-) create mode 100644 .changeset/README.md create mode 100644 .changeset/config.json create mode 100644 .dockerignore create mode 100644 .github/labeler.yaml create mode 100644 .github/workflows/deployment.yaml create mode 100644 .github/workflows/format.yaml create mode 100644 .github/workflows/labeler.yaml create mode 100644 .github/workflows/publish.yaml create mode 100644 .github/workflows/release.yaml create mode 100644 .github/workflows/welcome-bot.yaml create mode 100644 .prettierignore create mode 100644 .prettierrc create mode 100644 Dockerfile create mode 100644 manifest/certificate.yaml create mode 100644 manifest/deployment.yaml create mode 100644 manifest/ingress.yaml create mode 100644 manifest/namespace.yaml create mode 100644 manifest/service.yaml diff --git a/.changeset/README.md b/.changeset/README.md new file mode 100644 index 0000000..e5b6d8d --- /dev/null +++ b/.changeset/README.md @@ -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) diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 0000000..6bf09d1 --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,14 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@3.0.3/schema.json", + "changelog": [ + "@changesets/changelog-github", + { "repo": "trueberryless-org/starlight-sidebar-swipe" } + ], + "commit": false, + "fixed": [], + "linked": [], + "access": "public", + "baseBranch": "main", + "updateInternalDependencies": "patch", + "ignore": [] +} diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..f86a2cb --- /dev/null +++ b/.dockerignore @@ -0,0 +1,11 @@ +Dockerfile +.dockerignore +**/node_modules/ +**/.git +README.md +npm-debug.log +.coverage +.coverage.* +.env +.aws +.next diff --git a/.github/labeler.yaml b/.github/labeler.yaml new file mode 100644 index 0000000..a6fa2c4 --- /dev/null +++ b/.github/labeler.yaml @@ -0,0 +1,34 @@ +# See https://github.com/actions/labeler/tree/v5 + +"🚨 action": + - changed-files: + - any-glob-to-any-file: .github/workflows/** + +"πŸ“ changeset": + - changed-files: + - any-glob-to-any-file: "**/.changeset/**.{md,mdx}" + +"🚧 config": + - changed-files: + - any-glob-to-any-file: "**/*config*.{js,ts,jsx,tsx,mjs,mts,json,yml,yaml,toml,cjs,cts}" + +"βœ’οΈ documentation": + - changed-files: + - any-glob-to-any-file: "**/README.md" + +"🌏 i18n": + - changed-files: + - all-globs-to-any-file: ["**/docs/**", "!**/docs/en/**"] + +"πŸš€ manifest": + - changed-files: + - any-glob-to-any-file: "manifest*/**" + +"πŸ“¦ package": + - changed-files: + - any-glob-to-any-file: "**/packages/**" + - any-glob-to-any-file: "**/package.json" + +"🏯 styles": + - changed-files: + - any-glob-to-any-file: "**/*.{css,scss,sass,less,styl}" diff --git a/.github/workflows/deployment.yaml b/.github/workflows/deployment.yaml new file mode 100644 index 0000000..a36bf89 --- /dev/null +++ b/.github/workflows/deployment.yaml @@ -0,0 +1,201 @@ +name: Deployment + +on: + push: + branches: [main] + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.event_name == 'pull_request_target' && github.head_ref || github.ref }} + cancel-in-progress: true + +env: + REGISTRY: docker.io + IMAGE_OWNER: trueberryless + IMAGE_NAME: starlight-sidebar-swipe + NODE_VERSION: 20 + +jobs: + changes: + name: Filter + runs-on: ubuntu-latest + outputs: + docs: ${{ steps.filter.outputs.docs }} + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + docs: + - 'docs/**' + + changesets: + name: Changesets + runs-on: ubuntu-latest + outputs: + hasChangesets: ${{ steps.changesets.outputs.hasChangesets }} + permissions: + contents: write + pull-requests: write + steps: + - name: Checkout Repo + uses: actions/checkout@v4 + + - name: Setup PNPM + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: ${{ env.NODE_VERSION }} + cache: "pnpm" + + - name: Install Dependencies + run: pnpm i + + - name: Create Release Pull Request + id: changesets + uses: changesets/action@v1 + with: + commit: "[ci] release" + title: "[ci] release" + env: + GITHUB_TOKEN: ${{ secrets.PUBLIC_GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + + image-tag: + name: Image Tag + runs-on: ubuntu-latest + outputs: + IMAGE_TAG: ${{ env.IMAGE_TAG }} + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - name: Read version from package.json + id: get_version + run: | + VERSION=$(jq -r '.version' docs/package.json) + echo "IMAGE_TAG=$VERSION" >> $GITHUB_ENV + + deployment: + needs: [changes, changesets, image-tag] + if: > + ( + needs.changesets.outputs.hasChangesets == 'false' && + ( + contains(github.event.head_commit.message, 'deploy') || + contains(github.event.head_commit.message, '[ci] release') + ) + ) || + github.event_name == 'workflow_dispatch' + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Check out the repo + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup PNPM + uses: pnpm/action-setup@v3 + with: + package_json_file: ./docs/package.json + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: ${{ env.NODE_VERSION }} + cache: pnpm + cache-dependency-path: ./pnpm-lock.yaml + + - name: Install dependencies + run: pnpm install + shell: bash + working-directory: ./docs + + - name: Build Website + run: pnpm run build + shell: bash + working-directory: ./docs + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Log in to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@v5 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_OWNER }}/${{ env.IMAGE_NAME }} + + - name: Build and push Docker image + uses: docker/build-push-action@v6 + with: + context: . + push: true + tags: | + ${{ env.IMAGE_OWNER }}/${{ env.IMAGE_NAME }}:${{ needs.image-tag.outputs.IMAGE_TAG }} + ${{ env.IMAGE_OWNER }}/${{ env.IMAGE_NAME }}:latest + labels: ${{ steps.meta.outputs.labels }} + + - name: Update deployment.yaml file + run: | + yq eval '.spec.template.spec.containers[0].image = "${{ env.IMAGE_OWNER }}/${{ env.IMAGE_NAME }}:${{ needs.image-tag.outputs.IMAGE_TAG }}"' -i manifest/deployment.yaml + + - uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: update deployment.json container image (automated) + + release: + name: Release + needs: [image-tag, deployment] + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - id: extract-changelog + uses: sean0x42/markdown-extract@v2.1.0 + with: + file: docs/CHANGELOG.md + pattern: ${{ needs.image-tag.outputs.IMAGE_TAG }} + + - uses: ncipollo/release-action@v1 + id: create_release + with: + tag: ${{ env.IMAGE_NAME }}-docs@${{ needs.image-tag.outputs.IMAGE_TAG }} + makeLatest: false + body: ${{ steps.extract-changelog.outputs.markdown }} + skipIfReleaseExists: true + + - name: Check if release was created + id: check_release + run: | + if [ -z "${{ steps.create_release.outputs.html_url }}" ]; then + echo "RELEASE_SKIPPED=true" >> $GITHUB_ENV + else + echo "RELEASE_SKIPPED=false" >> $GITHUB_ENV + fi + + - name: Discord notification + if: env.RELEASE_SKIPPED == 'false' + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK_URL }} + uses: Ilshidur/action-discord@0.3.2 + with: + args: | + # ${{ env.IMAGE_NAME }}@${{ needs.image-tag.outputs.IMAGE_TAG }} + + ${{ steps.extract-changelog.outputs.markdown }} diff --git a/.github/workflows/format.yaml b/.github/workflows/format.yaml new file mode 100644 index 0000000..c166b69 --- /dev/null +++ b/.github/workflows/format.yaml @@ -0,0 +1,37 @@ +name: autofix.ci +on: + pull_request: + push: + branches: [main] +permissions: + contents: read + +jobs: + autofix: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Setup PNPM + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: "pnpm" + + - name: Install Dependencies + run: pnpm i + + - name: Run prettier + run: npx prettier --write . + + # Optimize all PNGs with https://pngquant.org/ + - run: sudo apt-get update && sudo apt-get install -y pngquant + - name: Run pngquant + run: | + shopt -s globstar + find . -name '*.png' -exec pngquant --ext .png --force 256 {} \; + + - uses: autofix-ci/action@ff86a557419858bb967097bfc916833f5647fa8c diff --git a/.github/workflows/labeler.yaml b/.github/workflows/labeler.yaml new file mode 100644 index 0000000..a432d18 --- /dev/null +++ b/.github/workflows/labeler.yaml @@ -0,0 +1,48 @@ +name: "Pull Request Labeler" +on: + - pull_request_target + +jobs: + labeler: + permissions: + contents: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Ensure labels exist + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + gh label delete "bug" --yes || true + gh label delete "documentation" --yes || true + gh label delete "duplicate" --yes || true + gh label delete "enhancement" --yes || true + gh label delete "good first issue" --yes || true + gh label delete "help wanted" --yes || true + gh label delete "invalid" --yes || true + gh label delete "question" --yes || true + gh label delete "wontfix" --yes || true + + gh label create "🚨 action" --description "Changes in GitHub workflows or actions" --color "A75AD5" --force + gh label create "πŸ€– bot" --description "Automatically generated pull request" --color "0075CA" --force + gh label create "πŸ› bug" --description "Something isn't working" --color "D73A4A" --force + gh label create "πŸ“ changeset" --description "Contains changeset files" --color "304EF9" --force + gh label create "🚧 config" --description "Configuration file updates" --color "C0ED4F" --force + gh label create "βœ’οΈ documentation" --description "Documentation updates, like README changes" --color "66741D" --force + gh label create "πŸ” duplicate" --description "This issue or pull request already exists" --color "008672" --force + gh label create "⏫ enhancement" --description "New feature or request" --color "3C11FD" --force + gh label create "πŸ₯‡ good first issue" --description "Good for newcomers" --color "7057FF" --force + gh label create "πŸ†˜ help wanted" --description "Extra attention is needed" --color "BFD4F2" --force + gh label create "🌏 i18n" --description "Updates to internationalized docs, excluding English" --color "006B75" --force + gh label create "πŸ‘€ invalid" --description "This doesn't seem right" --color "E4E669" --force + gh label create "πŸš€ manifest" --description "Manifest-related changes" --color "96D3D7" --force + gh label create "πŸ“¦ package" --description "Updates in package structure or package.json" --color "F34A37" --force + gh label create "❓ question" --description "Further information is requested" --color "D876E3" --force + gh label create "🏯 styles" --description "Stylesheets or design updates" --color "550F5A" --force + gh label create "πŸ”’ wontfix" --description "This will not be worked on" --color "FFFFFF" --force + + - uses: actions/labeler@v5 + with: + configuration-path: .github/labeler.yaml + sync-labels: true diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml new file mode 100644 index 0000000..2048846 --- /dev/null +++ b/.github/workflows/publish.yaml @@ -0,0 +1,164 @@ +name: Publish + +on: + push: + branches: [main] + workflow_dispatch: + +# Automatically cancel in-progress actions on the same branch +concurrency: + group: ${{ github.workflow }}-${{ github.event_name == 'pull_request_target' && github.head_ref || github.ref }} + cancel-in-progress: true + +env: + REGISTRY: docker.io + IMAGE_OWNER: trueberryless + IMAGE_NAME: starlight-sidebar-swipe + NODE_VERSION: 20 + +jobs: + changes: + name: Filter + runs-on: ubuntu-latest + outputs: + starlight-sidebar-swipe: ${{ steps.filter.outputs.starlight-sidebar-swipe }} + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + starlight-sidebar-swipe: + - 'packages/starlight-sidebar-swipe/**' + + changesets: + name: Changesets + runs-on: ubuntu-latest + outputs: + hasChangesets: ${{ steps.changesets.outputs.hasChangesets }} + permissions: + contents: write + pull-requests: write + steps: + - name: Checkout Repo + uses: actions/checkout@v4 + + - name: Setup PNPM + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: ${{ env.NODE_VERSION }} + cache: "pnpm" + + - name: Install Dependencies + run: pnpm i + + - name: Create Release Pull Request + id: changesets + uses: changesets/action@v1 + with: + commit: "[ci] release" + title: "[ci] release" + env: + GITHUB_TOKEN: ${{ secrets.PUBLIC_GITHUB_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + + image-tag: + name: Image Tag + runs-on: ubuntu-latest + outputs: + IMAGE_TAG: ${{ env.IMAGE_TAG }} + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - name: Read version from package.json + id: get_version + run: | + VERSION=$(jq -r '.version' packages/starlight-sidebar-swipe/package.json) + echo "IMAGE_TAG=$VERSION" >> $GITHUB_ENV + + publish: + needs: [changes, changesets, image-tag] + if: > + ( + needs.changesets.outputs.hasChangesets == 'false' && + ( + contains(github.event.head_commit.message, 'deploy') || + contains(github.event.head_commit.message, '[ci] release') + ) + ) || + github.event_name == 'workflow_dispatch' + runs-on: ubuntu-latest + permissions: + contents: write + id-token: write + steps: + - uses: actions/checkout@v4 + + - name: Setup PNPM + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: ${{ env.NODE_VERSION }} + cache: "pnpm" + registry-url: "https://registry.npmjs.org" + + - name: Install Dependencies + run: pnpm i + + - run: | + cd packages/starlight-sidebar-swipe + npm publish --provenance --access public + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + + release: + name: Release + needs: [image-tag, publish] + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - id: extract-changelog + uses: sean0x42/markdown-extract@v2.1.0 + with: + file: packages/starlight-sidebar-swipe/CHANGELOG.md + pattern: ${{ needs.image-tag.outputs.IMAGE_TAG }} + + - uses: ncipollo/release-action@v1 + id: create_release + with: + tag: ${{ env.IMAGE_NAME }}@${{ needs.image-tag.outputs.IMAGE_TAG }} + makeLatest: true + body: ${{ steps.extract-changelog.outputs.markdown }} + skipIfReleaseExists: true + + - name: Check if release was created + id: check_release + run: | + if [ -z "${{ steps.create_release.outputs.html_url }}" ]; then + echo "RELEASE_SKIPPED=true" >> $GITHUB_ENV + else + echo "RELEASE_SKIPPED=false" >> $GITHUB_ENV + fi + + - name: Discord notification + if: env.RELEASE_SKIPPED == 'false' + env: + DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK_URL }} + uses: Ilshidur/action-discord@0.3.2 + with: + args: | + # ${{ env.IMAGE_NAME }}@${{ needs.image-tag.outputs.IMAGE_TAG }} + + ${{ steps.extract-changelog.outputs.markdown }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 0000000..bf249b5 --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,40 @@ +name: Release + +on: + push: + branches: [main] + +jobs: + release: + name: Release + if: ${{ github.repository_owner == 'trueberryless-org' }} + permissions: + contents: write + pull-requests: write + runs-on: ubuntu-latest + steps: + - name: Checkout Repo + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup PNPM + uses: pnpm/action-setup@v3 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: "pnpm" + + - name: Install Dependencies + run: pnpm i + + - name: Create Release Pull Request + uses: changesets/action@v1 + with: + version: pnpm run version + commit: "[ci] release" + title: "[ci] release" + env: + GITHUB_TOKEN: ${{ secrets.PUBLIC_GITHUB_TOKEN }} diff --git a/.github/workflows/welcome-bot.yaml b/.github/workflows/welcome-bot.yaml new file mode 100644 index 0000000..19b53ba --- /dev/null +++ b/.github/workflows/welcome-bot.yaml @@ -0,0 +1,36 @@ +name: WelcomeBot + +on: + pull_request_target: + branches: [main] + types: [opened] + +permissions: + pull-requests: write + +jobs: + welcome: + name: Welcome First-Time Contributors + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Convert Repository Name to Title Case + id: convert_repo_name + run: | + REPO_NAME="${{ github.event.repository.name }}" + TITLE_CASE_REPO_NAME=$(echo "$REPO_NAME" | sed 's/-/ /g' | awk '{for(i=1;i<=NF;i++) $i=toupper(substr($i,1,1)) tolower(substr($i,2))} 1') + echo "title_case_repo_name=$TITLE_CASE_REPO_NAME" >> $GITHUB_ENV + - uses: zephyrproject-rtos/action-first-interaction@7e6446f8439d8b4399169880c36a3a12b5747699 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + pr-opened-message: | + Hello! Thank you for opening your **first PR** to ${{ env.title_case_repo_name }}! ✨ + + Here’s what will happen next: + + 1. Our GitHub bots will run to check your changes. + If they spot any issues you will see some error messages on this PR. + Don’t hesitate to ask any questions if you’re not sure what these mean! + + 2. One or more of our maintainers will take a look and may ask you to make changes. + We try to be responsive, but don’t worry if this takes a few days. diff --git a/.gitignore b/.gitignore index 6240da8..821e436 100644 --- a/.gitignore +++ b/.gitignore @@ -1,21 +1,134 @@ -# build output -dist/ -# generated types -.astro/ - -# dependencies -node_modules/ - -# logs +# Logs +logs +*.log npm-debug.log* yarn-debug.log* yarn-error.log* -pnpm-debug.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache +# Optional stylelint cache +.stylelintcache -# environment variables +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files .env -.env.production +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# Astro +.astro + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +.cache/ +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp +.cache + +# Docusaurus cache and generated files +.docusaurus + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for (testing) VSCode extensions +.vscode +.vscode-test -# macOS-specific files -.DS_Store +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..af546af --- /dev/null +++ b/.prettierignore @@ -0,0 +1,44 @@ +# Dependency directories +node_modules/ +dist/ +build/ +out/ + +# Lock files +pnpm-lock.yaml +package-lock.json +yarn.lock + +# Build and generated files +*.min.* +*.bundle.* +*.map + +# Git and version control +**/.git + +# Framework-specific files +next-env.d.ts +__generated__/ + +# Test and coverage files +coverage/ +*.spec.* +*.test.* + +# Editor-specific files +.vscode/ +.idea/ +*.sublime-project +*.sublime-workspace + +# OS generated files +.DS_Store +Thumbs.db + +# Markdown and MDX files +*.md +*.mdx + +# Changelog +.changeset diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..2bdf5f7 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,8 @@ +{ + "trailingComma": "es5", + "tabWidth": 2, + "semi": true, + "singleQuote": false, + "endOfLine": "lf", + "htmlWhitespaceSensitivity": "css" +} diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..0e1e740 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,4 @@ +FROM httpd:2.4 AS runtime +COPY /docs/dist /usr/local/apache2/htdocs/ +EXPOSE 80 +EXPOSE 443 diff --git a/manifest/certificate.yaml b/manifest/certificate.yaml new file mode 100644 index 0000000..bead577 --- /dev/null +++ b/manifest/certificate.yaml @@ -0,0 +1,12 @@ +apiVersion: cert-manager.io/v1 +kind: Certificate +metadata: + name: starlight-sidebar-swipe + namespace: starlight-sidebar-swipe +spec: + secretName: starlight-sidebar-swipe + issuerRef: + name: acme-issuer + kind: ClusterIssuer + dnsNames: + - "starlight-sidebar-swipe.trueberryless.org" diff --git a/manifest/deployment.yaml b/manifest/deployment.yaml new file mode 100644 index 0000000..b5eca79 --- /dev/null +++ b/manifest/deployment.yaml @@ -0,0 +1,21 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: starlight-sidebar-swipe + namespace: starlight-sidebar-swipe + labels: + app: starlight-sidebar-swipe +spec: + replicas: 3 + selector: + matchLabels: + app: starlight-sidebar-swipe + template: + metadata: + labels: + app: starlight-sidebar-swipe + spec: + containers: + - name: starlight-sidebar-swipe + image: "trueberryless/starlight-sidebar-swipe" + imagePullPolicy: Always diff --git a/manifest/ingress.yaml b/manifest/ingress.yaml new file mode 100644 index 0000000..6021bcc --- /dev/null +++ b/manifest/ingress.yaml @@ -0,0 +1,22 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: starlight-sidebar-swipe + namespace: starlight-sidebar-swipe +spec: + rules: + - host: starlight-sidebar-swipe.trueberryless.org + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: starlight-sidebar-swipe + port: + number: 80 + + tls: + - hosts: + - starlight-sidebar-swipe.trueberryless.org + secretName: starlight-sidebar-swipe diff --git a/manifest/namespace.yaml b/manifest/namespace.yaml new file mode 100644 index 0000000..f900922 --- /dev/null +++ b/manifest/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: starlight-sidebar-swipe diff --git a/manifest/service.yaml b/manifest/service.yaml new file mode 100644 index 0000000..702b4a7 --- /dev/null +++ b/manifest/service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + name: starlight-sidebar-swipe + namespace: starlight-sidebar-swipe + annotations: + cert-manager.io/issuer: acme-issuer +spec: + selector: + app: starlight-sidebar-swipe + ports: + - name: http + port: 80 diff --git a/package.json b/package.json index 0ec1e24..065e04b 100644 --- a/package.json +++ b/package.json @@ -1,19 +1,28 @@ { "name": "starlight-sidebar-swipe-monorepo", "version": "0.0.1", - "license": "MIT", - "description": "Make sidebar swipeable on mobile devices like Discord Mobile.", - "author": "trueberryless", - "type": "module", - "engines": { - "node": "^18.17.1 || ^20.3.0 || >=21.0.0" - }, - "packageManager": "pnpm@9.6.0", "private": true, + "description": "Make sidebar swipeable on mobile devices like Discord Mobile.", "homepage": "https://github.com/trueberryless-org/starlight-sidebar-swipe", + "bugs": { + "url": "https://github.com/trueberryless-org/starlight-sidebar-swipe/issues" + }, "repository": { "type": "git", "url": "https://github.com/trueberryless-org/starlight-sidebar-swipe.git" }, - "bugs": "https://github.com/trueberryless-org/starlight-sidebar-swipe/issues" + "license": "MIT", + "author": "trueberryless (https://trueberryless.org)", + "type": "module", + "scripts": { + "version": "pnpm changeset version && pnpm i --no-frozen-lockfile" + }, + "devDependencies": { + "@changesets/changelog-github": "^0.5.0", + "@changesets/cli": "^2.27.11" + }, + "packageManager": "pnpm@9.6.0", + "engines": { + "node": "^18.17.1 || ^20.3.0 || >=21.0.0" + } } diff --git a/packages/starlight-sidebar-swipe/README.md b/packages/starlight-sidebar-swipe/README.md index 2cacb69..80c65b8 100644 --- a/packages/starlight-sidebar-swipe/README.md +++ b/packages/starlight-sidebar-swipe/README.md @@ -10,6 +10,6 @@ Check out the `starlight-sidebar-swipe` getting started guide. ## License -Licensed under the MIT License, Copyright Β© trueberryless. +Licensed under the MIT license, Copyright Β© trueberryless. -See [LICENSE](https://github.com/trueberryless-org/starlight-sidebar-swipe/blob/main/LICENSE) for more information. +See [LICENSE](/LICENSE) for more information. diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 71979f6..df1d4eb 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,3 @@ packages: - - 'docs' - - 'packages/*' + - "docs/" + - "packages/*"