Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
cb1120a
add: pnpm-lock.yaml
khulnasoft-bot Apr 4, 2025
2e58334
Update package.json
khulnasoft-bot Apr 4, 2025
92b1a2b
Create pnpm.yml
khulnasoft-bot Apr 4, 2025
bddec2c
Create .npmrc
khulnasoft-bot Apr 4, 2025
7d60ff6
Create pnpm-workspace.yaml
khulnasoft-bot Apr 4, 2025
07be8df
Update netlify.toml
khulnasoft-bot Apr 4, 2025
8dc6e8e
Update README.md
khulnasoft-bot Apr 4, 2025
627f3f2
Update Dockerfile
khulnasoft-bot Apr 4, 2025
d733eec
Update .gitpod.yml
khulnasoft-bot Apr 4, 2025
989b02f
Update .gitignore
khulnasoft-bot Apr 4, 2025
c9639dc
Update .dockerignore
khulnasoft-bot Apr 4, 2025
9d71144
Update Dockerfile-arm32v7
khulnasoft-bot Apr 4, 2025
fd70c3e
Update Dockerfile-arm64v8
khulnasoft-bot Apr 4, 2025
74f25d9
Update Dockerfile-lite
khulnasoft-bot Apr 4, 2025
bc5a016
Update Dockerfile-old
khulnasoft-bot Apr 4, 2025
88bac8f
Update tasks.json
khulnasoft-bot Apr 4, 2025
68efe54
Update devcontainer.json
khulnasoft-bot Apr 4, 2025
ed7bf07
Update dependency-updates-summary.yml
khulnasoft-bot Apr 4, 2025
839991d
Update docker-build-publish.yml
khulnasoft-bot Apr 4, 2025
28723c6
Update pr-auto-comments.yml
khulnasoft-bot Apr 4, 2025
380f03c
Update configuring.md
khulnasoft-bot Apr 4, 2025
22e9194
Update credits.md
khulnasoft-bot Apr 4, 2025
1df9ea4
Update deployment.md
khulnasoft-bot Apr 4, 2025
4366573
Update developing.md
khulnasoft-bot Apr 4, 2025
a995306
Update development-guides.md
khulnasoft-bot Apr 4, 2025
14a495a
Update management.md
khulnasoft-bot Apr 4, 2025
a0c2f2d
Update quick-start.md
khulnasoft-bot Apr 4, 2025
41f816f
Update troubleshooting.md
khulnasoft-bot Apr 4, 2025
5474de1
Update widgets.md
khulnasoft-bot Apr 4, 2025
df4c0f4
Update server.js
khulnasoft-bot Apr 4, 2025
545eb22
Delete yarn.lock
khulnasoft-bot Apr 4, 2025
7ce7051
Delete .github/workflows/yarn.yml
khulnasoft-bot Apr 4, 2025
0c0ebf1
Update dependency-updates-summary.yml
khulnasoft-bot Apr 4, 2025
79b576c
Added: TypeScript support with
Apr 5, 2025
97e4b0e
Update get-size.yml
NxPKG Apr 5, 2025
c20939a
Update get-size.yml
NxPKG Apr 5, 2025
167eda6
fix: get-size.yml (#36)
NxPKG Apr 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "yarn install --ignore-engines --immutable --no-cache --network-timeout 300000 --network-concurrency 1"
"postCreateCommand": "npm install -g pnpm && pnpm install --frozen-lockfile --no-cache --network-timeout 300000 --network-concurrency 1"

// Configure tool-specific properties.
// "customizations": {},
Expand Down
2 changes: 1 addition & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Files specified here are not required for Docker
# so ignoring them helps to reduce the container size
# The Docker container MUST have the following files:
# package.json yarn.lock server.js vue.config.js src/ services/
# package.json pnpm-lock.yaml server.js vue.config.js src/ services/

node_modules
docs
Expand Down
42 changes: 42 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
module.exports = {
root: true,
env: {
node: true,
},
extends: [
'plugin:vue/essential',
'@vue/standard',
'airbnb-base',
],
ignorePatterns: [
'**/node_modules/**',
'**/dist/**',
'**/@/**',
'**/*.d.ts',
],
rules: {
'import/no-unresolved': 'off',
'import/extensions': 'off',
'arrow-parens': 0,
'no-else-return': 0,
'prefer-regex-literals': 'off',
'no-param-reassign': ['error', {
props: true,
ignorePropertyModificationsFor: ['state', 'config', 'args'],
}],
},
parserOptions: {
parser: '@babel/eslint-parser',
requireConfigFile: false,
},
overrides: [
{
files: ['*.ts', '*.tsx'],
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint'],
rules: {
'no-undef': 'off',
},
},
],
};
4 changes: 2 additions & 2 deletions .github/pr-auto-comments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ comment:

- id: dependency-changes
files:
- yarn.lock
- pnpm-lock.yaml
body: >
When updating dependencies, take a moment to verify that there are not security
issues associated with any added or modified packages. If adding a new dependency,
Expand Down Expand Up @@ -90,7 +90,7 @@ comment:
- node_modules/**/*
body: >
Please do not commit dependencies to git. Node modules will be pulled down
when yarn is run, prior to building the app
when pnpm is run, prior to building the app

- id: user-themes
files:
Expand Down
42 changes: 30 additions & 12 deletions .github/workflows/dependency-updates-summary.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,35 @@
# Shows changes to any yarn.lock in PR comment
# Useful for easily understanding dependency changes and consequences
name: 💡 Show Dependency Changes
on: [pull_request]
name: Dependency Updates Summary

on:
pull_request:
paths:
- 'pnpm-lock.yaml'

jobs:
check:
pnpm-lock-changes:
name: Create pnpm Lock Changes Comment
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v2
- name: Yarn Lock Changes
uses: Simek/yarn-lock-changes@main
uses: actions/checkout@v3
with:
token: ${{ secrets.ORG_REPO_TOKEN || secrets.GITHUB_TOKEN }}
collapsibleThreshold: '25'
failOnDowngrade: 'false'
path: 'yarn.lock'
fetch-depth: 0

- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 18

- name: Install pnpm-lock-export CLI
run: npm install -g pnpm-lock-export

- name: Generate Lock Changes
run: pnpm-lock-export --path=pnpm-lock.yaml --format=markdown --output=lock-changes.md

- name: Comment PR
uses: machine-learning-apps/pr-comment@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
path: lock-changes.md
2 changes: 1 addition & 1 deletion .github/workflows/docker-build-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ permissions:
packages: write

env:
DH_IMAGE: ${{ secrets.DOCKER_REPO }}
DH_IMAGE: ${{ secrets.DOCKER_USERNAME }}
GH_IMAGE: ${{ github.repository_owner }}/${{ github.event.repository.name }}

jobs:
Expand Down
25 changes: 23 additions & 2 deletions .github/workflows/get-size.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# Adds a comment to new PRs, showing the compressed size and size difference of new code
# And also labels the PR based on the number of lines changes
name: 🌈 Check PR Size
on: [pull_request]
jobs:
Expand All @@ -8,6 +6,24 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v2

# Set SHELL environment variable
- name: Set SHELL environment variable
run: echo "SHELL=/bin/bash" >> $GITHUB_ENV

# Install pnpm
- name: Setup pnpm
uses: pnpm/action-setup@v2
with:
version: latest

# Setup Node.js
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 18
cache: 'pnpm'

# Find and comment with compressed size
- name: Get Compressed Size
uses: preactjs/compressed-size-action@v2
Expand All @@ -17,6 +33,7 @@ jobs:
strip-hash: '\\b\\w{8}\\.'
exclude: '{./dist/manifest.json,**/*.map,**/node_modules/**}'
minimum-change-threshold: 100

# Check number of lines of code added
- name: Label based on Lines of Code
uses: codelytv/pr-size-labeler@v1
Expand All @@ -36,3 +53,7 @@ jobs:
Try to avoid addressing multiple issues in a single PR, and
in the future consider breaking large tasks down into smaller steps.
This it to make reviewing, testing, reverting and general quality management easier.

# Fix: Installing using pnpm install --frozen-lockfile
- name: Install dependencies
run: pnpm install --frozen-lockfile
28 changes: 28 additions & 0 deletions .github/workflows/pnpm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Install Dependencies Without pnpm-lock.yaml

on:
workflow_dispatch:
schedule:
- cron: '0 0 * * 0' # Run every Sunday at midnight

jobs:
pnpm-install:
runs-on: ubuntu-latest
steps:
# Step 1: Checkout the repository
- uses: actions/checkout@v2

# Step 2: Remove the pnpm-lock.yaml file (if it exists)
- name: Remove pnpm-lock.yaml
run: |
if [ -f pnpm-lock.yaml ]; then
rm pnpm-lock.yaml
fi

# Step 3: Install dependencies without pnpm-lock.yaml
- name: Install Dependencies
run: pnpm install --no-lockfile --ignore-engines

# Step 4: Restore the pnpm-lock.yaml file (if it exists in the repo)
- name: Restore pnpm-lock.yaml
run: git checkout pnpm-lock.yaml || echo "No pnpm-lock.yaml to restore"
31 changes: 0 additions & 31 deletions .github/workflows/yarn.yml

This file was deleted.

14 changes: 14 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,30 @@ node_modules
# local env files
.env.local
.env.*.local
.env
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Verification agent

🧩 Analysis chain

Consider .env file handling approach.

Adding .env to .gitignore is common practice, but consider if you should provide a template file (like .env.example) to document required environment variables.


🏁 Script executed:

#!/bin/bash
# Check if an .env.example file already exists
if [ ! -f ".env.example" ]; then
  echo "No .env.example file found. Consider creating one to document required environment variables."
fi

Length of output: 226


Action Required: Add a .env.example Template

The .gitignore update correctly ignores the .env file. However, the verification confirms that a corresponding .env.example file is missing. To improve clarity and assist new developers, please add a .env.example file documenting all required environment variables.

  • .env is now ignored, which is appropriate.
  • No .env.example file was found—this file would serve as a template for required variables.


# Log files
pnpm-debug.log*
.pnpm-store/
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

# Build output
build/
out/
coverage/

# Temporary files
*.log
*.tmp
.cache/
6 changes: 3 additions & 3 deletions .gitpod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

# Commands to start on workspace startup
tasks:
- init: yarn install --ignore-engines
command: yarn dev
- init: pnpm install --ignore-engines
command: pnpm dev
# Ports to expose on workspace startup
ports:
- port: 8080 # Default dev server
Expand All @@ -22,4 +22,4 @@ vscode:
- PKief.material-icon-theme
- wix.vscode-import-cost
- oderwat.indent-rainbow
- eamodio.gitlens
- eamodio.gitlens
8 changes: 8 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
shamefully-hoist=true
strict-peer-dependencies=false
auto-install-peers=true
node-linker=hoisted
enable-pre-post-scripts=true
save-exact=true
use-node-version=18.19.0
enable-git-hooks=true
9 changes: 5 additions & 4 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,9 @@
"tasks": [
{
"label": "shipyard start",
"type": "npm",
"script": "dev",
"type": "shell",
"command": "pnpm",
"args": ["dev"],
"isBackground": true,
"problemMatcher": [
{
Expand All @@ -15,7 +16,7 @@
"endsPattern": "Compiled successfully"
}
}
],
]
}
]
}
}
10 changes: 5 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,14 @@ RUN \
WORKDIR /app

# Install app dependencies
COPY package.json yarn.lock ./
RUN yarn install --ignore-engines --immutable --no-cache --network-timeout 300000 --network-concurrency 1
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --ignore-engines --frozen-lockfile --no-cache --network-timeout 300000 --network-concurrency 1

# Copy over all project files and folders to the working directory
COPY . ./

# Build initial app for production
RUN yarn build --mode production --no-clean
RUN pnpm build --mode production --no-clean

# Production stage
FROM node:20.11.1-alpine3.19
Expand All @@ -42,10 +42,10 @@ RUN apk add --no-cache tzdata
COPY --from=BUILD_IMAGE /app ./

# Finally, run start command to serve up the built application
CMD [ "yarn", "build-and-start" ]
CMD [ "pnpm", "build-and-start" ]

# Expose the port
EXPOSE ${PORT}

# Run simple healthchecks every 5 mins, to check that everythings still great
HEALTHCHECK --interval=5m --timeout=5s --start-period=30s CMD yarn health-check
HEALTHCHECK --interval=5m --timeout=5s --start-period=30s CMD pnpm health-check
Loading
Loading