diff --git a/.editorconfig b/.editorconfig index 875e82ae..defa55ae 100644 --- a/.editorconfig +++ b/.editorconfig @@ -9,4 +9,12 @@ end_of_line = lf indent_size = 4 indent_style = space trim_trailing_whitespace = true +insert_final_newline = false + +[*.{yml,yaml}] +charset = utf-8 +end_of_line = lf +indent_size = 2 +indent_style = space +trim_trailing_whitespace = true insert_final_newline = false \ No newline at end of file diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000..df08ca30 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,9 @@ +# This is a comment +# Each line is a file pattern followed by one or more owners + +# These owners will be the default owners for everything in +# the repo. Unless a later match takes precedence +# @mlhaufe will be requested for +# review when someone opens a pull request + +* @mlhaufe diff --git a/.github/workflows/build-release.yml b/.github/workflows/build-release.yml new file mode 100644 index 00000000..38979184 --- /dev/null +++ b/.github/workflows/build-release.yml @@ -0,0 +1,79 @@ +# Reference: +name: Build/Release + +on: + release: + types: [created] + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + build: + name: Build + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [20.x] + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - name: Cache Node.js modules + id: cache-npm + uses: actions/cache@v3 + env: + cache-name: cache-npm + with: + # npm cache files are stored in `~/.npm` on Linux/macOS + path: ~/.npm + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-build-${{ env.cache-name }}- + ${{ runner.os }}-build- + ${{ runner.os }}- + - if: steps.cache-npm.outputs.cache-hit != 'true' + name: List the state of node modules + run: npm list + continue-on-error: true + - name: Install dependencies + run: npm install + - name: Build + run: npm run build + - name: Test + run: npm run test + - name: Upload artifact + uses: actions/upload-pages-artifact@v2 + with: + name: dist + path: dist + + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Download artifact + uses: actions/download-artifact@v2 + with: + name: dist + - name: Setup Pages + uses: actions/configure-pages@v3 + - name: Deploy to Github Pages + id: deployment + uses: actions/deploy-pages@v2 \ No newline at end of file diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..537bff02 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,52 @@ +# Reference: +name: Build + +on: + pull_request: + branches: [ master ] + push: + branches: [ master ] + +jobs: + validate: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [20.x] + + steps: + - uses: actions/checkout@v2 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + + - name: Cache Node.js modules + id: cache-npm + uses: actions/cache@v3 + env: + cache-name: cache-npm + with: + # npm cache files are stored in `~/.npm` on Linux/macOS + path: ~/.npm + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} + restore-keys: | + ${{ runner.os }}-build-${{ env.cache-name }}- + ${{ runner.os }}-build- + ${{ runner.os }}- + + - if: steps.cache-npm.outputs.cache-hit != 'true' + name: List the state of node modules + run: npm list + continue-on-error: true + + - name: Install dependencies + run: npm install + + - name: Build + run: npm run build + + - name: Test + run: npm run test \ No newline at end of file diff --git a/README.md b/README.md index f5db2a2d..21cba71e 100644 --- a/README.md +++ b/README.md @@ -1,75 +1 @@ -# Nuxt 3 Minimal Starter - -Look at the [Nuxt 3 documentation](https://nuxt.com/docs/getting-started/introduction) to learn more. - -## Setup - -Make sure to install the dependencies: - -```bash -# npm -npm install - -# pnpm -pnpm install - -# yarn -yarn install - -# bun -bun install -``` - -## Development Server - -Start the development server on `http://localhost:3000`: - -```bash -# npm -npm run dev - -# pnpm -pnpm run dev - -# yarn -yarn dev - -# bun -bun run dev -``` - -## Production - -Build the application for production: - -```bash -# npm -npm run build - -# pnpm -pnpm run build - -# yarn -yarn build - -# bun -bun run build -``` - -Locally preview production build: - -```bash -# npm -npm run preview - -# pnpm -pnpm run preview - -# yarn -yarn preview - -# bun -bun run preview -``` - -Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information. +# Cathedral diff --git a/package.json b/package.json index 1a319ab0..70a2acb7 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,8 @@ "scripts": { "build": "webpack", "lint": "eslint src/ --ext .mts --fix", - "serve": "webpack serve" + "serve": "webpack serve", + "test": "echo \"Error: no test specified\" && exit 0" }, "devDependencies": { "@types/dom-navigation": "^1.0.3",