Skip to content

Commit c7bf827

Browse files
committed
Added initial Pongo structure
1 parent 5fab155 commit c7bf827

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+6381
-16
lines changed

.editorconfig

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Editor configuration, see http://editorconfig.org
2+
root = true
3+
4+
[*]
5+
end_of_line = lf

.gitattributes

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Handle line endings automatically for files detected as text
2+
# and leave all files detected as binary untouched.
3+
* text=auto
4+
5+
# Force the following filetypes to have unix eols, so Windows does not break them
6+
*.* text eol=lf
7+
8+
*.png binary
9+
*.jpg binary
10+
*.jpeg binary
11+
*.gif binary
12+
*.ico binary
13+
*.mov binary
14+
*.mp4 binary
15+
*.mp3 binary
16+
*.flv binary
17+
*.fla binary
18+
*.swf binary
19+
*.gz binary
20+
*.zip binary
21+
*.7z binary
22+
*.ttf binary
23+
*.eot binary
24+
*.woff binary
25+
*.pyc binary
26+
*.pdf binary
27+
*.ez binary
28+
*.bz2 binary
29+
*.swp binary

.github/FUNDING.yml

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# These are supported funding model platforms
2+
3+
github: [oskardudycz]
4+
patreon: # Replace with a single Patreon username
5+
open_collective: # Replace with a single Open Collective username
6+
ko_fi: # Replace with a single Ko-fi username
7+
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8+
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9+
liberapay: # Replace with a single Liberapay username
10+
issuehunt: # Replace with a single IssueHunt username
11+
otechie: # Replace with a single Otechie username
12+
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']

.github/workflows/build_and_test.yml

+54
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Build and test
2+
3+
on:
4+
# run it on push to the default repository branch
5+
push:
6+
branches: [main]
7+
paths:
8+
- "src/**"
9+
- "./.github/workflows/build_and_test.yml"
10+
11+
# run it during pull request
12+
pull_request:
13+
paths:
14+
- "src/**"
15+
- "./.github/workflows/build_and_test.yml"
16+
17+
# Allows you to run this workflow manually from the Actions tab
18+
workflow_dispatch:
19+
20+
defaults:
21+
run:
22+
working-directory: src
23+
24+
jobs:
25+
build-and-test-code:
26+
name: Build application code
27+
# use system defined below in the tests matrix
28+
runs-on: ubuntu-latest
29+
30+
steps:
31+
- name: Check Out Repo
32+
uses: actions/checkout@v4
33+
34+
- name: Use Node.js
35+
uses: actions/setup-node@v4
36+
with:
37+
node-version-file: ./src/.nvmrc
38+
cache: "npm"
39+
cache-dependency-path: "./src/package-lock.json"
40+
41+
- name: Install dependencies
42+
run: npm ci
43+
44+
- name: Build TS
45+
run: npm run build:ts
46+
47+
- name: Run linting (ESlint and Prettier)
48+
run: npm run lint
49+
50+
- name: Build
51+
run: npm run build
52+
53+
- name: Test
54+
run: npm run test

.github/workflows/deploy-docs.yml

+75
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Sample workflow for building and deploying a VitePress site to GitHub Pages
2+
#
3+
name: Deploy VitePress site to Pages
4+
5+
on:
6+
# Runs on pushes targeting the `main` branch. Change this to `master` if you're
7+
# using the `master` branch as the default branch.
8+
push:
9+
branches: [main]
10+
11+
# Allows you to run this workflow manually from the Actions tab
12+
workflow_dispatch:
13+
14+
defaults:
15+
run:
16+
working-directory: src
17+
18+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
19+
permissions:
20+
contents: read
21+
pages: write
22+
id-token: write
23+
24+
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
25+
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
26+
concurrency:
27+
group: pages
28+
cancel-in-progress: false
29+
30+
jobs:
31+
# Build job
32+
build:
33+
runs-on: ubuntu-latest
34+
steps:
35+
- name: Checkout
36+
uses: actions/checkout@v4
37+
with:
38+
fetch-depth: 0 # Not needed if lastUpdated is not enabled
39+
# - uses: pnpm/action-setup@v2 # Uncomment this if you're using pnpm
40+
# - uses: oven-sh/setup-bun@v1 # Uncomment this if you're using Bun
41+
- name: Setup Node
42+
uses: actions/setup-node@v4
43+
with:
44+
node-version-file: ./src/.nvmrc
45+
cache: "npm"
46+
cache-dependency-path: "./src/package-lock.json"
47+
48+
- name: Setup Pages
49+
uses: actions/configure-pages@v4
50+
51+
- name: Install dependencies
52+
run: npm ci # or pnpm install / yarn install / bun install
53+
54+
- name: Build with VitePress
55+
run: |
56+
npm run docs:build # or pnpm docs:build / yarn docs:build / bun run docs:build
57+
touch docs/.vitepress/dist/.nojekyll
58+
59+
- name: Upload artifact
60+
uses: actions/upload-pages-artifact@v3
61+
with:
62+
path: ./src/docs/.vitepress/dist
63+
64+
# Deployment job
65+
deploy:
66+
environment:
67+
name: github-pages
68+
url: ${{ steps.deployment.outputs.page_url }}
69+
needs: build
70+
runs-on: ubuntu-latest
71+
name: Deploy
72+
steps:
73+
- name: Deploy to GitHub Pages
74+
id: deployment
75+
uses: actions/deploy-pages@v4

.github/workflows/publish.yml

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Publish to NPM
2+
on: [workflow_dispatch]
3+
4+
defaults:
5+
run:
6+
working-directory: src
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Check Out Repo
13+
uses: actions/checkout@v4
14+
15+
- name: Use Node.js
16+
uses: actions/setup-node@v4
17+
with:
18+
registry-url: "https://registry.npmjs.org"
19+
node-version-file: ./src/.nvmrc
20+
cache: "npm"
21+
cache-dependency-path: "./src/package-lock.json"
22+
23+
- name: Install dependencies
24+
run: npm ci
25+
26+
- name: Build
27+
run: npm run build
28+
env:
29+
NODE_ENV: production
30+
31+
- name: Set public publishing
32+
run: npm config set access public
33+
34+
- name: Publish package on NPM 📦
35+
run: npm publish --ws
36+
env:
37+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
38+
NODE_ENV: production

.gitignore

+13-16
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ npm-debug.log*
55
yarn-debug.log*
66
yarn-error.log*
77
lerna-debug.log*
8-
.pnpm-debug.log*
98

109
# Diagnostic reports (https://nodejs.org/api/report.html)
1110
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
@@ -39,6 +38,7 @@ bower_components
3938
build/Release
4039

4140
# Dependency directories
41+
*/node_modules/
4242
node_modules/
4343
jspm_packages/
4444

@@ -54,9 +54,6 @@ web_modules/
5454
# Optional eslint cache
5555
.eslintcache
5656

57-
# Optional stylelint cache
58-
.stylelintcache
59-
6057
# Microbundle cache
6158
.rpt2_cache/
6259
.rts2_cache_cjs/
@@ -72,12 +69,9 @@ web_modules/
7269
# Yarn Integrity file
7370
.yarn-integrity
7471

75-
# dotenv environment variable files
72+
# dotenv environment variables file
7673
.env
77-
.env.development.local
78-
.env.test.local
79-
.env.production.local
80-
.env.local
74+
.env.test
8175

8276
# parcel-bundler cache (https://parceljs.org/)
8377
.cache
@@ -100,13 +94,6 @@ dist
10094
# vuepress build output
10195
.vuepress/dist
10296

103-
# vuepress v2.x temp and cache directory
104-
.temp
105-
.cache
106-
107-
# Docusaurus cache and generated files
108-
.docusaurus
109-
11097
# Serverless directories
11198
.serverless/
11299

@@ -128,3 +115,13 @@ dist
128115
.yarn/build-state.yml
129116
.yarn/install-state.gz
130117
.pnp.*
118+
119+
# vitepress
120+
src/docs/.vitepress/dist
121+
src/docs/.vitepress/cache
122+
lib
123+
124+
.DS_Store
125+
*/.output
126+
e2e/esmCompatibility/.output
127+
src/e2e/esmCompatibility/.output

.nvmrc

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
v20.11.1

.vscode/Node.js.code-profile

+1
Large diffs are not rendered by default.

.vscode/launch.json

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
{
2+
"version": "0.2.0",
3+
"configurations": [
4+
{
5+
"name": "Debug All Tests (Node)",
6+
"type": "node",
7+
"request": "launch",
8+
"skipFiles": ["<node_internals>/**"],
9+
"runtimeExecutable": "npm",
10+
"runtimeArgs": ["run-script", "test", "--inspect-brk=9229"], // Use --inspect-brk for debugging
11+
"console": "integratedTerminal",
12+
"internalConsoleOptions": "neverOpen",
13+
"cwd": "${workspaceFolder}/src/",
14+
"sourceMaps": true
15+
},
16+
{
17+
"name": "Debug Current Test File",
18+
"type": "node",
19+
"request": "launch",
20+
"skipFiles": ["<node_internals>/**"],
21+
"runtimeExecutable": "npm",
22+
"runtimeArgs": [
23+
"run-script",
24+
"test:singlefile",
25+
"--",
26+
"${file}",
27+
"--inspect-brk=9229"
28+
], // Use --inspect-brk for debugging
29+
"console": "integratedTerminal",
30+
"internalConsoleOptions": "neverOpen",
31+
"cwd": "${workspaceFolder}/src/",
32+
"sourceMaps": true
33+
}
34+
]
35+
}

.vscode/settings.json

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"editor.defaultFormatter": "esbenp.prettier-vscode",
3+
"editor.formatOnPaste": false,
4+
"editor.formatOnSave": true,
5+
6+
"editor.codeActionsOnSave": {
7+
"source.organizeImports": "explicit",
8+
"source.fixAll.eslint": "explicit",
9+
"source.addMissingImports": "always"
10+
},
11+
12+
"editor.tabSize": 2,
13+
14+
"files.exclude": {
15+
"node_modules/": true,
16+
"**/node_modules/": true,
17+
"**/dist/": true,
18+
"**/*.tsbuildinfo": true
19+
},
20+
"files.eol": "\n",
21+
22+
"typescript.preferences.importModuleSpecifier": "relative",
23+
"eslint.workingDirectories": [{ "mode": "auto" }],
24+
"debug.javascript.terminalOptions": {
25+
"nodeVersionHint": 20
26+
}
27+
}

.vscode/tasks.json

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"version": "2.0.0",
3+
"tasks": [
4+
{
5+
"type": "npm",
6+
"script": "build:ts:watch",
7+
"group": "build",
8+
"problemMatcher": [],
9+
"label": "npm: build:ts:watch",
10+
"detail": "tsc --watch",
11+
"options": {
12+
"cwd": "${workspaceFolder}/src/"
13+
}
14+
}
15+
]
16+
}

0 commit comments

Comments
 (0)