Skip to content

Commit 1b7247c

Browse files
authored
Initial commit
0 parents  commit 1b7247c

Some content is hidden

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

48 files changed

+16321
-0
lines changed

.docs/.vitepress/config.mts

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
import { defineConfig } from "vitepress";
2+
3+
// https://vitepress.dev/reference/site-config
4+
// https://vitepress.dev/pt/reference/default-theme-config
5+
export default defineConfig({
6+
title: "TSLib Template",
7+
base: "/tslib-template/",
8+
description: "✨ Template for Node and Typescript based libraries",
9+
cleanUrls: true,
10+
// head: [
11+
// ["meta", { name: "msvalidate.01", content: "F4D861C3287B312C6D147ECEC9B85E5E" }],
12+
// ["meta", { name: "google-site-verification", content: "lJpOPhia4HtRabTKEdpgyB_MWRKamHC6pfjFqekWiH0" }],
13+
// ["link", { rel: "icon", type: "image/png", sizes: "32x32", href: "/images/uap-logo-transparent.png" }],
14+
// ["script", {}, 'window?.localStorage?.setItem("vitepress-theme-appearance", window?.localStorage?.getItem("vitepress-theme-appearance") ?? "dark")'],
15+
// ["script", { async: "", src: "https://analytics.umami.is/script.js", "data-website-id": "8d8f3cb0-d161-4a3c-891e-eb042af6d3a3" }],
16+
// ["script", { src: "//code.tidio.co/hu6mx7fw2r6llmfzxj5llesd5l51q5dv.js", async: "" }],
17+
// ],
18+
// sitemap: {
19+
// hostname: "https://docs.uaparser.dev",
20+
// },
21+
// appearance: "dark",
22+
lastUpdated: true,
23+
ignoreDeadLinks: true,
24+
themeConfig: {
25+
// https://vitepress.dev/reference/default-theme-config
26+
// outlineTitle: 'This page',
27+
logo: { src: "./logo.png", width: 24, height: 24 },
28+
nav: [
29+
{ text: "Guide", link: "/app/_media/CONTRIBUTING" },
30+
// { text: 'Examples', link: '/markdown-examples' }
31+
],
32+
33+
sidebar: [
34+
{
35+
text: "📦 API",
36+
items: require("../app/typedoc-sidebar.json"),
37+
},
38+
{
39+
text: "📖 Developer Docs",
40+
items: [
41+
{ text: "Project", link: "/app" },
42+
{ text: "Contribution Guide", link: "/app/_media/CONTRIBUTING" },
43+
{ text: "Code of Conduct", link: "/app/_media/CODE_OF_CONDUCT" },
44+
{ text: "Coverage", link: "/coverage" },
45+
],
46+
},
47+
],
48+
socialLinks: [
49+
// icons 'discord' | 'facebook' | 'github'| 'instagram'| 'linkedin'| 'slack'| 'twitter'| 'youtube'
50+
{ icon: "github", link: "https://github.com/heliomarpm/tslib-template" },
51+
{
52+
icon: "npm",
53+
// icon: {
54+
// svg: '<svg color="#CB3837" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>npm</title><path d="M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z"/></svg>',
55+
// },
56+
link: "https://www.npmjs.com/~heliomarpm",
57+
},
58+
{
59+
icon: "linkedin",
60+
link: "https://www.linkedin.com/in/heliomarpm",
61+
},
62+
{
63+
icon: {
64+
svg: '<svg class="shake" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="red" d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></svg>',
65+
},
66+
link: "https://github.com/sponsors/heliomarpm",
67+
},
68+
{
69+
icon: {
70+
svg: `<svg version="1.1" role="img" viewBox="0 -12 72 72" xmlns="http://www.w3.org/2000/svg" >
71+
<path d="M0 0 C3.375 1.8125 3.375 1.8125 6 4 C6.78375 4.5775 7.5675 5.155 8.375 5.75 C8.91125 6.1625 9.4475 6.575 10 7 C10.48210938 6.57847656 10.96421875 6.15695313 11.4609375 5.72265625 C12.09257813 5.17480469 12.72421875 4.62695312 13.375 4.0625 C14.00148437 3.51722656 14.62796875 2.97195312 15.2734375 2.41015625 C18.84327746 -0.50548227 21.98498688 -0.33287533 26.45703125 -0.28125 C31.19972252 0.24328728 33.82232734 2.66530432 36.875 6.125 C38.53202073 10.35960852 38.85431429 14.52662202 38 19 C34.95735932 24.56523817 30.53036376 28.80250025 26.0625 33.25 C25.35931641 33.96929687 24.65613281 34.68859375 23.93164062 35.4296875 C23.24392578 36.11804687 22.55621094 36.80640625 21.84765625 37.515625 C20.9196521 38.44810059 20.9196521 38.44810059 19.97290039 39.39941406 C15.63563269 42.91817746 11.47951284 43.48065902 6 43 C1.79857998 41.35238431 -0.99528597 39.3514118 -4 36 C-6.51896049 37.119538 -8.39734655 38.31981552 -10.5625 40.0625 C-14.60505745 43.2758149 -17.95732585 43.34187621 -23 43 C-27.68170268 41.25583626 -30.21249191 39.12964161 -33 35 C-34.47110099 30.58669702 -34.63582778 26.76676737 -33.046875 22.3515625 C-30.04829143 17.44166803 -26.09232592 13.69939498 -22 9.6875 C-20.77023438 8.45290039 -20.77023438 8.45290039 -19.515625 7.19335938 C-13.18798747 0.92258787 -9.02090074 -1.04141444 0 0 Z M-12 8 C-13.7654997 11.22013673 -13.7654997 11.22013673 -14 15 C-11.35622057 20.59820295 -7.86412457 24.545214 -3.4375 28.8125 C-2.86064453 29.38419922 -2.28378906 29.95589844 -1.68945312 30.54492188 C3.05437386 35.36916585 3.05437386 35.36916585 9.375 37.4375 C13.09585486 37.27801417 13.09585486 37.27801417 15.9375 34.9375 C18.19317357 32.12017397 18.19317357 32.12017397 18.75 28.6875 C17.66207932 23.33855666 14.79807827 20.77118922 11 17 C9.73736328 15.68322266 9.73736328 15.68322266 8.44921875 14.33984375 C3.3873518 8.74886688 3.3873518 8.74886688 -3 5 C-7.36107919 5 -8.68184793 5.29308647 -12 8 Z M16 9 C14.8317387 11.06976289 14.8317387 11.06976289 14 13 C14.47050781 13.43570312 14.94101562 13.87140625 15.42578125 14.3203125 C19.2151214 17.94489873 21.95670553 21.07205451 24 26 C28.27357772 22.77107461 31.28156532 20.26270621 33 15 C32.25594503 11.20531966 31.26677862 8.21674263 28 6 C22.66217888 4.22072629 20.2179702 5.45307051 16 9 Z M-21.59375 17.4609375 C-22.2228125 18.09257812 -22.851875 18.72421875 -23.5 19.375 C-24.1290625 20.00148438 -24.758125 20.62796875 -25.40625 21.2734375 C-27.6936986 23.75150681 -27.98657121 24.88137904 -28.375 28.3125 C-28.29445692 32.08956386 -28.29445692 32.08956386 -25.9375 34.9375 C-23.11636097 37.21046217 -23.11636097 37.21046217 -19.625 37.6875 C-14.80345745 36.77306952 -12.36532392 34.43692656 -9 31 C-9.38671875 30.5875 -9.7734375 30.175 -10.171875 29.75 C-14.05737783 25.4413236 -16.59273608 21.2774632 -19 16 C-20.23747945 15.88737923 -20.23747945 15.88737923 -21.59375 17.4609375 Z " fill="#FF660F" transform="translate(34,0)"/>
72+
<path d="M0 0 C0.87785156 -0.00257812 1.75570313 -0.00515625 2.66015625 -0.0078125 C4.9375 0.125 4.9375 0.125 6.9375 1.125 C6.9375 3.435 6.9375 5.745 6.9375 8.125 C6.23625 7.774375 5.535 7.42375 4.8125 7.0625 C1.35520308 5.93512057 -0.58332298 6.14175432 -4.0625 7.125 C-6.31375021 8.67758635 -6.9499663 9.85491912 -8 12.375 C-8.09334215 16.48205472 -6.54411501 19.00542264 -4.0625 22.125 C-2.6631149 23.47009861 -1.26240961 24.81404114 0.15795898 26.13696289 C6.67427696 32.21019204 6.67427696 32.21019204 7.65234375 35.609375 C7.625 37.8125 7.625 37.8125 6.9375 41.125 C3.9675 38.65 3.9675 38.65 0.9375 36.125 C-1.58146049 37.244538 -3.45984655 38.44481552 -5.625 40.1875 C-9.66755745 43.4008149 -13.01982585 43.46687621 -18.0625 43.125 C-22.74420268 41.38083626 -25.27499191 39.25464161 -28.0625 35.125 C-29.53360099 30.71169702 -29.69832778 26.89176737 -28.109375 22.4765625 C-25.11079143 17.56666803 -21.15482592 13.82439498 -17.0625 9.8125 C-15.83273437 8.57790039 -15.83273437 8.57790039 -14.578125 7.31835938 C-9.69005136 2.47421451 -7.08905534 -0.02088087 0 0 Z M-16.65625 17.5859375 C-17.2853125 18.21757812 -17.914375 18.84921875 -18.5625 19.5 C-19.1915625 20.12648438 -19.820625 20.75296875 -20.46875 21.3984375 C-22.7561986 23.87650681 -23.04907121 25.00637904 -23.4375 28.4375 C-23.35695692 32.21456386 -23.35695692 32.21456386 -21 35.0625 C-18.17886097 37.33546217 -18.17886097 37.33546217 -14.6875 37.8125 C-9.86595745 36.89806952 -7.42782392 34.56192656 -4.0625 31.125 C-4.44921875 30.7125 -4.8359375 30.3 -5.234375 29.875 C-9.11987783 25.5663236 -11.65523608 21.4024632 -14.0625 16.125 C-15.29997945 16.01237923 -15.29997945 16.01237923 -16.65625 17.5859375 Z " fill="#D2007C" transform="translate(29.0625,-0.125)"/>
73+
<path d="M0 0 C5.29877676 -0.50464541 7.90716575 0.63478073 12 4 C15.39023575 7.84226718 15.52833261 11.65322804 15.33203125 16.58984375 C14.29673531 24.10487427 6.44055751 30.20396846 1 35 C0.34 35 -0.32 35 -1 35 C-1 31.7 -1 28.4 -1 25 C0.32 24.67 1.64 24.34 3 24 C6.32680401 20.59582845 8.8779357 17.88257216 9 13 C8.75 9.75 8.75 9.75 7 7 C4.30901324 5.84358818 1.92916978 5.47244674 -1 5 C-0.67 3.35 -0.34 1.7 0 0 Z " fill="#FF9E17" transform="translate(57,0)"/>
74+
<path d="M0 0 C-0.125 2.25 -0.125 2.25 -1 5 C-2.99371825 6.34270821 -4.9934562 7.67653494 -7 9 C-7 10.32 -7 11.64 -7 13 C-7 15.66666667 -7 18.33333333 -7 21 C-9.35985986 19.02542338 -11.68643583 17.0277184 -14 15 C-14.66773438 14.43539063 -15.33546875 13.87078125 -16.0234375 13.2890625 C-20.90120968 8.8891129 -20.90120968 8.8891129 -21.4375 4.0625 C-21.293125 3.051875 -21.14875 2.04125 -21 1 C-18.04590299 2.37154504 -15.55991624 3.98863724 -13 6 C-12.51789062 5.57847656 -12.03578125 5.15695313 -11.5390625 4.72265625 C-10.90742187 4.17480469 -10.27578125 3.62695312 -9.625 3.0625 C-8.68527344 2.24458984 -8.68527344 2.24458984 -7.7265625 1.41015625 C-4.76764382 -1.00651715 -3.58505602 -1.07551681 0 0 Z " fill="#FF5419" transform="translate(57,1)"/>
75+
<path d="M0 0 C5.2295082 2.3442623 5.2295082 2.3442623 7 5 C7.2529766 7.71815286 7.1347974 10.25911949 7 13 C4.41608882 11.20049043 2.06581634 9.38682039 0 7 C-0.4375 3.125 -0.4375 3.125 0 0 Z " fill="#FF2635" transform="translate(36,2)"/>
76+
<path d="M0 0 C3.465 1.485 3.465 1.485 7 3 C7 4.98 7 6.96 7 9 C1.125 8.125 1.125 8.125 0 7 C-0.04092937 4.66702567 -0.04241723 2.33294775 0 0 Z " fill="#FF2635" transform="translate(36,34)"/>
77+
<path d="M0 0 C0 2.31 0 4.62 0 7 C-2.31 7.33 -4.62 7.66 -7 8 C-7 6.02 -7 4.04 -7 2 C-2.25 0 -2.25 0 0 0 Z " fill="#FF3D27" transform="translate(50,35)"/>
78+
<path d="M0 0 C0 4.62 0 9.24 0 14 C-4 11 -4 11 -4.49609375 9.0625 C-4.33719136 3.4691358 -4.33719136 3.4691358 -2.5625 1 C-1 0 -1 0 0 0 Z " fill="#FF3E27" transform="translate(47,5)"/>
79+
<path d="M0 0 C3 3 3 3 3.3984375 6.28515625 C3.39070313 7.53167969 3.38296875 8.77820313 3.375 10.0625 C3.38273437 11.31160156 3.39046875 12.56070312 3.3984375 13.84765625 C3.26695313 14.88792969 3.13546875 15.92820312 3 17 C2.01 17.66 1.02 18.32 0 19 C0 12.73 0 6.46 0 0 Z " fill="#FF7704" transform="translate(54,19)"/>
80+
<path d="M0 0 C2.0625 0.4375 2.0625 0.4375 4 1 C3.67 2.65 3.34 4.3 3 6 C1.68 6.33 0.36 6.66 -1 7 C-1.04254356 5.00045254 -1.04080783 2.99958364 -1 1 C-0.67 0.67 -0.34 0.34 0 0 Z " fill="#FF7108" transform="translate(53,0)"/>
81+
<path d="M0 0 C0.99 0.33 1.98 0.66 3 1 C3 3.64 3 6.28 3 9 C2.01 8.34 1.02 7.68 0 7 C-0.1875 3.375 -0.1875 3.375 0 0 Z " fill="#FF1141" transform="translate(36,2)"/>
82+
<path d="M0 0 C0.99 0.33 1.98 0.66 3 1 C3 3.31 3 5.62 3 8 C2.01 7.67 1.02 7.34 0 7 C0 4.69 0 2.38 0 0 Z " fill="#FF1141" transform="translate(36,34)"/>
83+
<path d="M0 0 C0.66 0 1.32 0 2 0 C2 2.31 2 4.62 2 7 C1.01 7 0.02 7 -1 7 C-1.04254356 5.00045254 -1.04080783 2.99958364 -1 1 C-0.67 0.67 -0.34 0.34 0 0 Z " fill="#FF511B" transform="translate(48,35)"/>
84+
</svg>`,
85+
},
86+
link: "https://navto.me/heliomarpm",
87+
},
88+
// {
89+
// icon: {
90+
// svg: '<svg color="#7FADF2" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Open Collective</title><path d="M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12c2.54 0 4.894-.79 6.834-2.135l-3.107-3.109a7.715 7.715 0 1 1 0-13.512l3.107-3.109A11.943 11.943 0 0 0 12 0zm9.865 5.166l-3.109 3.107A7.67 7.67 0 0 1 19.715 12a7.682 7.682 0 0 1-.959 3.727l3.109 3.107A11.943 11.943 0 0 0 24 12c0-2.54-.79-4.894-2.135-6.834z"/></svg>',
91+
// },
92+
// link: "https://opencollective.com/ua-parser-js",
93+
// },
94+
],
95+
// carbonAds: { code: "CW7I62JY", placement: "docsuaparserdev" },
96+
footer: {
97+
message: "Released under the MIT License",
98+
copyright: "© 2025 <a href='https://navto.me/heliomarpm'>Heliomar P. Marques</a>",
99+
},
100+
lastUpdatedText: "Updated Date",
101+
// editLink: {
102+
// pattern: "https://github.com/heliomarpm/tslib-template/tree/main/.docs/:path",
103+
// text: "Edit this page on GitHub",
104+
// },
105+
},
106+
// markdown: {
107+
// lineNumbers: true,
108+
// // adjust how header anchors are generated,
109+
// // useful for integrating with tools that use different conventions
110+
// anchor: {
111+
// slugify(str) {
112+
// return encodeURIComponent(str);
113+
// },
114+
// },
115+
// },
116+
// vite: {
117+
// build: {
118+
// minify: "terser",
119+
// chunkSizeWarningLimit: 1600,
120+
// },
121+
// },
122+
});

.docs/coverage.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Coverage Report
2+
3+
<iframe src="./coverage/index.html" width="100%" height="800px" style="border:none;"></iframe>

.docs/index.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
# https://vitepress.dev/reference/default-theme-home-page
3+
layout: home
4+
5+
hero:
6+
name: "TSLib Template"
7+
text: ""
8+
tagline: TypeScript Template, Vitest, CI/CD, semantic-release, Conventional Changelog, TypeDoc, NPM/GPR Publishing, GitHub Actions
9+
10+
actions:
11+
- theme: brand
12+
text: Documentation
13+
link: /app/index
14+
# - theme: alt
15+
# text: API Examples
16+
# link: /api-examples
17+
18+
image:
19+
src: logo.png
20+
alt: 'TSLib Template'
21+
# loading: eager
22+
# fetchpriority: high
23+
# width: 320
24+
# height: 320
25+
26+
features:
27+
- icon: 🌱
28+
title: TSApp Template
29+
details: TypeScript Template, Vitest, CI/CD, semantic-release, Conventional Changelog, TypeDoc, GitHub Actions
30+
link: https://heliomarpm.github.io/tsapp-template/
31+
32+
- icon:
33+
src: https://static-production.npmjs.com/da3ab40fb0861d15c83854c29f5f2962.png
34+
title: NPM Package`s
35+
details: My packages are available on NPM
36+
link: https://www.npmjs.com/~heliomarpm
37+
38+
- icon:
39+
src: https://navto.me/assets/favicon.png
40+
title: navto.me
41+
details: One link for all your links
42+
link: https://navto.me/heliomarpm
43+
linkText: Nav to Me
44+
---

.docs/markdown-examples.md

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
# Markdown Extension Examples
2+
3+
This page demonstrates some of the built-in markdown extensions provided by VitePress.
4+
5+
## Syntax Highlighting
6+
7+
VitePress provides Syntax Highlighting powered by [Shiki](https://github.com/shikijs/shiki), with additional features like line-highlighting:
8+
9+
**Input**
10+
11+
````md
12+
```js{4}
13+
export default {
14+
data () {
15+
return {
16+
msg: 'Highlighted!'
17+
}
18+
}
19+
}
20+
```
21+
````
22+
23+
**Output**
24+
25+
```js{4}
26+
export default {
27+
data () {
28+
return {
29+
msg: 'Highlighted!'
30+
}
31+
}
32+
}
33+
```
34+
35+
## Custom Containers
36+
37+
**Input**
38+
39+
```md
40+
::: info
41+
This is an info box.
42+
:::
43+
44+
::: tip
45+
This is a tip.
46+
:::
47+
48+
::: warning
49+
This is a warning.
50+
:::
51+
52+
::: danger
53+
This is a dangerous warning.
54+
:::
55+
56+
::: details
57+
This is a details block.
58+
:::
59+
```
60+
61+
**Output**
62+
63+
::: info
64+
This is an info box.
65+
:::
66+
67+
::: tip
68+
This is a tip.
69+
:::
70+
71+
::: warning
72+
This is a warning.
73+
:::
74+
75+
::: danger
76+
This is a dangerous warning.
77+
:::
78+
79+
::: details
80+
This is a details block.
81+
:::
82+
83+
## More
84+
85+
Check out the documentation for the [full list of markdown extensions](https://vitepress.dev/guide/markdown).

.editorconfig

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Editor configuration, see https://editorconfig.org
2+
root = true
3+
4+
[*]
5+
charset = utf-8
6+
indent_style = tab
7+
indent_size = 2
8+
insert_final_newline = true
9+
trim_trailing_whitespace = true
10+
max_line_length = 180
11+
end_of_line = lf
12+
13+
[*.{json,yml,yaml,md}]
14+
indent_style = space
15+
indent_size = 2
16+
quote_type = double
17+
18+
[*.{js,ts,html}]
19+
indent_size = 4
20+
21+
[*.{js,ts}]
22+
quote_type = double
23+
24+
[*.md]
25+
max_line_length = off
26+
trim_trailing_whitespace = false

.github/FUNDING.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
github: heliomarpm
2+
3+
ko_fi: heliomarpm
4+
liberapay: heliomarpm
5+
custom: [
6+
"https://www.paypal.com/donate?business=KBVHLR7Z9V7B2&no_recurring=0&currency_code=USD",
7+
"https://www.paypal.com/donate?business=KBVHLR7Z9V7B2&no_recurring=0&currency_code=BRL"
8+
]

.github/ISSUE_TEMPLATE/README.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# Issue Templates
2+
3+
Welcome! This project uses custom issue templates to help organize bug reports, feature requests, documentation improvements, and support questions.
4+
5+
Please choose the appropriate issue type when reporting or suggesting something:
6+
7+
## 🐛 Bug Report
8+
9+
Use this template if you encounter a **reproducible bug** or unexpected behavior.
10+
11+
- Clearly describe the issue.
12+
- Provide steps to reproduce (if possible, include a minimal code example).
13+
- Include environment information (Node version, OS, library versions).
14+
15+
👉 Select the **"🐛 Bug Report"** template when creating the issue.
16+
17+
---
18+
19+
## ✨ Feature Request
20+
21+
Use this if you want to suggest a **new feature** or **enhancement**.
22+
23+
- Explain the motivation or problem it solves.
24+
- Suggest how it could work or be implemented.
25+
26+
👉 Select the **"✨ Feature Request"** template when creating the issue.
27+
28+
---
29+
30+
## 📝 Documentation
31+
32+
Use this to report any **errors, outdated sections**, or **areas needing clarification** in the documentation.
33+
34+
- Quote or link to the problematic section.
35+
- Suggest how it could be improved.
36+
37+
👉 Select the **"📝 Documentation"** template when creating the issue.
38+
39+
---
40+
41+
## ❓ Question / Support
42+
43+
If you need **help using the project** or have general questions:
44+
45+
- Be as detailed as possible.
46+
- Include relevant code or context.
47+
48+
👉 Select the **"❓ Question / Support"** template when creating the issue.
49+
50+
---
51+
52+
Thanks for contributing! 💬✨

0 commit comments

Comments
 (0)