website layout complete, next, polish wording
This commit is contained in:
parent
4d446b14ee
commit
ceadff78aa
@ -4,6 +4,7 @@ import starlight from '@astrojs/starlight'
|
||||
import starlightThemeRapide from 'starlight-theme-rapide'
|
||||
import starlightSidebarTopics from 'starlight-sidebar-topics'
|
||||
import starlightVideos from 'starlight-videos'
|
||||
// import starlightOpenAPI, { openAPISidebarGroups } from 'starlight-openapi'
|
||||
|
||||
// https://astro.build/config
|
||||
export default defineConfig({
|
||||
@ -104,26 +105,6 @@ export default defineConfig({
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
label: 'Products',
|
||||
link: '/products/',
|
||||
icon: 'forward-slash',
|
||||
items: [
|
||||
{ label: 'Overview', slug: 'products' },
|
||||
{
|
||||
label: 'Models',
|
||||
autogenerate: { directory: 'products/models' },
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
autogenerate: { directory: 'products/platforms' },
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
autogenerate: { directory: 'products/tools' },
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
label: 'Jan AI University',
|
||||
link: '/university/',
|
||||
@ -169,7 +150,7 @@ export default defineConfig({
|
||||
},
|
||||
],
|
||||
{
|
||||
exclude: ['/prods'],
|
||||
exclude: ['/prods', '/api-reference', '/products', '/products/**/*'],
|
||||
topics: {
|
||||
university: [
|
||||
'/university/getting-started/what-is-jan',
|
||||
@ -188,6 +169,9 @@ export default defineConfig({
|
||||
href: 'https://github.com/menloresearch/jan',
|
||||
},
|
||||
],
|
||||
components: {
|
||||
Header: './src/components/CustomNav.astro',
|
||||
},
|
||||
}),
|
||||
],
|
||||
})
|
||||
|
||||
@ -5,10 +5,12 @@
|
||||
"name": "website",
|
||||
"dependencies": {
|
||||
"@astrojs/starlight": "^0.35.1",
|
||||
"@lorenzo_lewis/starlight-utils": "^0.3.2",
|
||||
"astro": "^5.6.1",
|
||||
"gsap": "^3.13.0",
|
||||
"phosphor-astro": "^2.1.0",
|
||||
"sharp": "^0.34.2",
|
||||
"starlight-openapi": "^0.19.1",
|
||||
"starlight-sidebar-topics": "^0.6.0",
|
||||
"starlight-theme-rapide": "^0.5.1",
|
||||
"starlight-videos": "^0.3.0",
|
||||
@ -16,6 +18,8 @@
|
||||
},
|
||||
},
|
||||
"packages": {
|
||||
"@apidevtools/swagger-methods": ["@apidevtools/swagger-methods@3.0.2", "", {}, "sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg=="],
|
||||
|
||||
"@astro-community/astro-embed-youtube": ["@astro-community/astro-embed-youtube@0.5.6", "", { "dependencies": { "lite-youtube-embed": "^0.3.3" }, "peerDependencies": { "astro": "^2.0.0 || ^3.0.0-beta || ^4.0.0-beta || ^5.0.0-beta" } }, "sha512-/mRfCl/eTBUz0kmjD1psOy0qoDDBorVp0QumUacjFcIkBullYtbeFQ2ZGZ+3N/tA6cR/OIyzr2QA4dQXlY6USg=="],
|
||||
|
||||
"@astrojs/compiler": ["@astrojs/compiler@2.12.2", "", {}, "sha512-w2zfvhjNCkNMmMMOn5b0J8+OmUaBL1o40ipMvqcG6NRpdC+lKxmTi48DT8Xw0SzJ3AfmeFLB45zXZXtmbsjcgw=="],
|
||||
@ -34,6 +38,8 @@
|
||||
|
||||
"@astrojs/telemetry": ["@astrojs/telemetry@3.3.0", "", { "dependencies": { "ci-info": "^4.2.0", "debug": "^4.4.0", "dlv": "^1.1.3", "dset": "^3.1.4", "is-docker": "^3.0.0", "is-wsl": "^3.1.0", "which-pm-runs": "^1.1.0" } }, "sha512-UFBgfeldP06qu6khs/yY+q1cDAaArM2/7AEIqQ9Cuvf7B1hNLq0xDrZkct+QoIGyjq56y8IaE2I3CTvG99mlhQ=="],
|
||||
|
||||
"@babel/code-frame": ["@babel/code-frame@7.27.1", "", { "dependencies": { "@babel/helper-validator-identifier": "^7.27.1", "js-tokens": "^4.0.0", "picocolors": "^1.1.1" } }, "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg=="],
|
||||
|
||||
"@babel/helper-string-parser": ["@babel/helper-string-parser@7.27.1", "", {}, "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA=="],
|
||||
|
||||
"@babel/helper-validator-identifier": ["@babel/helper-validator-identifier@7.27.1", "", {}, "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow=="],
|
||||
@ -110,6 +116,8 @@
|
||||
|
||||
"@expressive-code/plugin-text-markers": ["@expressive-code/plugin-text-markers@0.41.3", "", { "dependencies": { "@expressive-code/core": "^0.41.3" } }, "sha512-SN8tkIzDpA0HLAscEYD2IVrfLiid6qEdE9QLlGVSxO1KEw7qYvjpbNBQjUjMr5/jvTJ7ys6zysU2vLPHE0sb2g=="],
|
||||
|
||||
"@humanwhocodes/momoa": ["@humanwhocodes/momoa@2.0.4", "", {}, "sha512-RE815I4arJFtt+FVeU1Tgp9/Xvecacji8w/V6XtXsWWH/wz/eNkNbhb+ny/+PlVZjV0rxQpRSQKNKE3lcktHEA=="],
|
||||
|
||||
"@img/sharp-darwin-arm64": ["@img/sharp-darwin-arm64@0.34.3", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-arm64": "1.2.0" }, "os": "darwin", "cpu": "arm64" }, "sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg=="],
|
||||
|
||||
"@img/sharp-darwin-x64": ["@img/sharp-darwin-x64@0.34.3", "", { "optionalDependencies": { "@img/sharp-libvips-darwin-x64": "1.2.0" }, "os": "darwin", "cpu": "x64" }, "sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA=="],
|
||||
@ -156,6 +164,10 @@
|
||||
|
||||
"@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.4", "", {}, "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw=="],
|
||||
|
||||
"@jsdevtools/ono": ["@jsdevtools/ono@7.1.3", "", {}, "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg=="],
|
||||
|
||||
"@lorenzo_lewis/starlight-utils": ["@lorenzo_lewis/starlight-utils@0.3.2", "", { "dependencies": { "astro-integration-kit": "^0.18.0" }, "peerDependencies": { "@astrojs/starlight": ">=0.32.0", "astro": ">=5" } }, "sha512-9GCZLyfIUTkXuE39jHjcCSwnOzm6hSGnC8DrHlo2imegiZmZSdG0eBMA/sTb/shLkvCzE2SGCaKM+EwIeO6oDw=="],
|
||||
|
||||
"@mdx-js/mdx": ["@mdx-js/mdx@3.1.0", "", { "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", "@types/mdx": "^2.0.0", "collapse-white-space": "^2.0.0", "devlop": "^1.0.0", "estree-util-is-identifier-name": "^3.0.0", "estree-util-scope": "^1.0.0", "estree-walker": "^3.0.0", "hast-util-to-jsx-runtime": "^2.0.0", "markdown-extensions": "^2.0.0", "recma-build-jsx": "^1.0.0", "recma-jsx": "^1.0.0", "recma-stringify": "^1.0.0", "rehype-recma": "^1.0.0", "remark-mdx": "^3.0.0", "remark-parse": "^11.0.0", "remark-rehype": "^11.0.0", "source-map": "^0.7.0", "unified": "^11.0.0", "unist-util-position-from-estree": "^2.0.0", "unist-util-stringify-position": "^4.0.0", "unist-util-visit": "^5.0.0", "vfile": "^6.0.0" } }, "sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw=="],
|
||||
|
||||
"@oslojs/encoding": ["@oslojs/encoding@1.1.0", "", {}, "sha512-70wQhgYmndg4GCPxPPxPGevRKqTIJ2Nh4OkiMWmDAVYsTQ+Ta7Sq+rPevXyXGdzr30/qZBnyOalCszoMxlyldQ=="],
|
||||
@ -172,6 +184,14 @@
|
||||
|
||||
"@pagefind/windows-x64": ["@pagefind/windows-x64@1.3.0", "", { "os": "win32", "cpu": "x64" }, "sha512-BR1bIRWOMqkf8IoU576YDhij1Wd/Zf2kX/kCI0b2qzCKC8wcc2GQJaaRMCpzvCCrmliO4vtJ6RITp/AnoYUUmQ=="],
|
||||
|
||||
"@readme/better-ajv-errors": ["@readme/better-ajv-errors@2.3.2", "", { "dependencies": { "@babel/code-frame": "^7.22.5", "@babel/runtime": "^7.22.5", "@humanwhocodes/momoa": "^2.0.3", "jsonpointer": "^5.0.0", "leven": "^3.1.0", "picocolors": "^1.1.1" }, "peerDependencies": { "ajv": "4.11.8 - 8" } }, "sha512-T4GGnRAlY3C339NhoUpgJJFsMYko9vIgFAlhgV+/vEGFw66qEY4a4TRJIAZBcX/qT1pq5DvXSme+SQODHOoBrw=="],
|
||||
|
||||
"@readme/json-schema-ref-parser": ["@readme/json-schema-ref-parser@1.2.0", "", { "dependencies": { "@jsdevtools/ono": "^7.1.3", "@types/json-schema": "^7.0.6", "call-me-maybe": "^1.0.1", "js-yaml": "^4.1.0" } }, "sha512-Bt3QVovFSua4QmHa65EHUmh2xS0XJ3rgTEUPH998f4OW4VVJke3BuS16f+kM0ZLOGdvIrzrPRqwihuv5BAjtrA=="],
|
||||
|
||||
"@readme/openapi-parser": ["@readme/openapi-parser@2.7.0", "", { "dependencies": { "@apidevtools/swagger-methods": "^3.0.2", "@jsdevtools/ono": "^7.1.3", "@readme/better-ajv-errors": "^2.0.0", "@readme/json-schema-ref-parser": "^1.2.0", "@readme/openapi-schemas": "^3.1.0", "ajv": "^8.12.0", "ajv-draft-04": "^1.0.0", "call-me-maybe": "^1.0.1" }, "peerDependencies": { "openapi-types": ">=7" } }, "sha512-P8WSr8WTOxilnT89tcCRKWYsG/II4sAwt1a/DIWub8xTtkrG9cCBBy/IUcvc5X8oGWN82MwcTA3uEkDrXZd/7A=="],
|
||||
|
||||
"@readme/openapi-schemas": ["@readme/openapi-schemas@3.1.0", "", {}, "sha512-9FC/6ho8uFa8fV50+FPy/ngWN53jaUu4GRXlAjcxIRrzhltJnpKkBG2Tp0IDraFJeWrOpk84RJ9EMEEYzaI1Bw=="],
|
||||
|
||||
"@rollup/pluginutils": ["@rollup/pluginutils@5.2.0", "", { "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", "picomatch": "^4.0.2" }, "peerDependencies": { "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw=="],
|
||||
|
||||
"@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.45.1", "", { "os": "android", "cpu": "arm" }, "sha512-NEySIFvMY0ZQO+utJkgoMiCAjMrGvnbDLHvcmlA33UXJpYBCvlBEbMMtV837uCkS+plG2umfhn0T5mMAxGrlRA=="],
|
||||
@ -242,6 +262,8 @@
|
||||
|
||||
"@types/js-yaml": ["@types/js-yaml@4.0.9", "", {}, "sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg=="],
|
||||
|
||||
"@types/json-schema": ["@types/json-schema@7.0.15", "", {}, "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="],
|
||||
|
||||
"@types/mdast": ["@types/mdast@4.0.4", "", { "dependencies": { "@types/unist": "*" } }, "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA=="],
|
||||
|
||||
"@types/mdx": ["@types/mdx@2.0.13", "", {}, "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw=="],
|
||||
@ -262,6 +284,10 @@
|
||||
|
||||
"acorn-jsx": ["acorn-jsx@5.3.2", "", { "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ=="],
|
||||
|
||||
"ajv": ["ajv@8.17.1", "", { "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2" } }, "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g=="],
|
||||
|
||||
"ajv-draft-04": ["ajv-draft-04@1.0.0", "", { "peerDependencies": { "ajv": "^8.5.0" }, "optionalPeers": ["ajv"] }, "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw=="],
|
||||
|
||||
"ansi-align": ["ansi-align@3.0.1", "", { "dependencies": { "string-width": "^4.1.0" } }, "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w=="],
|
||||
|
||||
"ansi-regex": ["ansi-regex@6.1.0", "", {}, "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA=="],
|
||||
@ -278,12 +304,16 @@
|
||||
|
||||
"array-iterate": ["array-iterate@2.0.1", "", {}, "sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg=="],
|
||||
|
||||
"ast-types": ["ast-types@0.16.1", "", { "dependencies": { "tslib": "^2.0.1" } }, "sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg=="],
|
||||
|
||||
"astring": ["astring@1.9.0", "", { "bin": { "astring": "bin/astring" } }, "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg=="],
|
||||
|
||||
"astro": ["astro@5.12.1", "", { "dependencies": { "@astrojs/compiler": "^2.12.2", "@astrojs/internal-helpers": "0.6.1", "@astrojs/markdown-remark": "6.3.3", "@astrojs/telemetry": "3.3.0", "@capsizecss/unpack": "^2.4.0", "@oslojs/encoding": "^1.1.0", "@rollup/pluginutils": "^5.1.4", "acorn": "^8.14.1", "aria-query": "^5.3.2", "axobject-query": "^4.1.0", "boxen": "8.0.1", "ci-info": "^4.2.0", "clsx": "^2.1.1", "common-ancestor-path": "^1.0.1", "cookie": "^1.0.2", "cssesc": "^3.0.0", "debug": "^4.4.0", "deterministic-object-hash": "^2.0.2", "devalue": "^5.1.1", "diff": "^5.2.0", "dlv": "^1.1.3", "dset": "^3.1.4", "es-module-lexer": "^1.6.0", "esbuild": "^0.25.0", "estree-walker": "^3.0.3", "flattie": "^1.1.1", "fontace": "~0.3.0", "github-slugger": "^2.0.0", "html-escaper": "3.0.3", "http-cache-semantics": "^4.1.1", "import-meta-resolve": "^4.1.0", "js-yaml": "^4.1.0", "kleur": "^4.1.5", "magic-string": "^0.30.17", "magicast": "^0.3.5", "mrmime": "^2.0.1", "neotraverse": "^0.6.18", "p-limit": "^6.2.0", "p-queue": "^8.1.0", "package-manager-detector": "^1.1.0", "picomatch": "^4.0.2", "prompts": "^2.4.2", "rehype": "^13.0.2", "semver": "^7.7.1", "shiki": "^3.2.1", "smol-toml": "^1.3.4", "tinyexec": "^0.3.2", "tinyglobby": "^0.2.12", "tsconfck": "^3.1.5", "ultrahtml": "^1.6.0", "unifont": "~0.5.0", "unist-util-visit": "^5.0.0", "unstorage": "^1.15.0", "vfile": "^6.0.3", "vite": "^6.3.4", "vitefu": "^1.0.6", "xxhash-wasm": "^1.1.0", "yargs-parser": "^21.1.1", "yocto-spinner": "^0.2.1", "zod": "^3.24.2", "zod-to-json-schema": "^3.24.5", "zod-to-ts": "^1.2.0" }, "optionalDependencies": { "sharp": "^0.33.3" }, "bin": { "astro": "astro.js" } }, "sha512-/gH9cLIp6UNdbJO1FPBVN/Ea+1I9hJdQoLJKYUsXIRIfHcyF/3NCg0QVDJGw1oWkyQT6x6poQsnbgY9UXitjiw=="],
|
||||
|
||||
"astro-expressive-code": ["astro-expressive-code@0.41.3", "", { "dependencies": { "rehype-expressive-code": "^0.41.3" }, "peerDependencies": { "astro": "^4.0.0-beta || ^5.0.0-beta || ^3.3.0" } }, "sha512-u+zHMqo/QNLE2eqYRCrK3+XMlKakv33Bzuz+56V1gs8H0y6TZ0hIi3VNbIxeTn51NLn+mJfUV/A0kMNfE4rANw=="],
|
||||
|
||||
"astro-integration-kit": ["astro-integration-kit@0.18.0", "", { "dependencies": { "pathe": "^1.1.2", "recast": "^0.23.7" }, "peerDependencies": { "astro": "^4.12.0 || ^5.0.0" } }, "sha512-Z0QW5IQjosuKQDEGYYkvUX6EhEtrmE4/oViqWz23QveV8U7AuyFsTdg00WRNPevWZl/5a4lLUeDpv4bCRynRRg=="],
|
||||
|
||||
"axobject-query": ["axobject-query@4.1.0", "", {}, "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ=="],
|
||||
|
||||
"bail": ["bail@2.0.2", "", {}, "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="],
|
||||
@ -304,6 +334,8 @@
|
||||
|
||||
"brotli": ["brotli@1.3.3", "", { "dependencies": { "base64-js": "^1.1.2" } }, "sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg=="],
|
||||
|
||||
"call-me-maybe": ["call-me-maybe@1.0.2", "", {}, "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ=="],
|
||||
|
||||
"camelcase": ["camelcase@8.0.0", "", {}, "sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA=="],
|
||||
|
||||
"ccount": ["ccount@2.0.1", "", {}, "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg=="],
|
||||
@ -398,6 +430,8 @@
|
||||
|
||||
"escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="],
|
||||
|
||||
"esprima": ["esprima@4.0.1", "", { "bin": { "esparse": "./bin/esparse.js", "esvalidate": "./bin/esvalidate.js" } }, "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="],
|
||||
|
||||
"estree-util-attach-comments": ["estree-util-attach-comments@3.0.0", "", { "dependencies": { "@types/estree": "^1.0.0" } }, "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw=="],
|
||||
|
||||
"estree-util-build-jsx": ["estree-util-build-jsx@3.0.1", "", { "dependencies": { "@types/estree-jsx": "^1.0.0", "devlop": "^1.0.0", "estree-util-is-identifier-name": "^3.0.0", "estree-walker": "^3.0.0" } }, "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ=="],
|
||||
@ -420,6 +454,8 @@
|
||||
|
||||
"fast-deep-equal": ["fast-deep-equal@3.1.3", "", {}, "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="],
|
||||
|
||||
"fast-uri": ["fast-uri@3.0.6", "", {}, "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw=="],
|
||||
|
||||
"fdir": ["fdir@6.4.6", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w=="],
|
||||
|
||||
"flattie": ["flattie@1.1.1", "", {}, "sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ=="],
|
||||
@ -516,12 +552,20 @@
|
||||
|
||||
"iso8601-duration": ["iso8601-duration@2.1.2", "", {}, "sha512-yXteYUiKv6x8seaDzyBwnZtPpmx766KfvQuaVNyPifYOjmPdOo3ajd4phDNa7Y5mTQGnXsNEcXFtVun1FjYXxQ=="],
|
||||
|
||||
"js-tokens": ["js-tokens@4.0.0", "", {}, "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="],
|
||||
|
||||
"js-yaml": ["js-yaml@4.1.0", "", { "dependencies": { "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA=="],
|
||||
|
||||
"json-schema-traverse": ["json-schema-traverse@1.0.0", "", {}, "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="],
|
||||
|
||||
"jsonpointer": ["jsonpointer@5.0.1", "", {}, "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ=="],
|
||||
|
||||
"kleur": ["kleur@4.1.5", "", {}, "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ=="],
|
||||
|
||||
"klona": ["klona@2.0.6", "", {}, "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA=="],
|
||||
|
||||
"leven": ["leven@3.1.0", "", {}, "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A=="],
|
||||
|
||||
"lite-youtube-embed": ["lite-youtube-embed@0.3.3", "", {}, "sha512-gFfVVnj6NRjxVfJKo3qoLtpi0v5mn3AcR4eKD45wrxQuxzveFJUb+7Cr6uV6n+DjO8X3p0UzPPquhGt0H/y+NA=="],
|
||||
|
||||
"longest-streak": ["longest-streak@3.1.0", "", {}, "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="],
|
||||
@ -674,6 +718,8 @@
|
||||
|
||||
"oniguruma-to-es": ["oniguruma-to-es@4.3.3", "", { "dependencies": { "oniguruma-parser": "^0.12.1", "regex": "^6.0.1", "regex-recursion": "^6.0.2" } }, "sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg=="],
|
||||
|
||||
"openapi-types": ["openapi-types@12.1.3", "", {}, "sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw=="],
|
||||
|
||||
"p-limit": ["p-limit@6.2.0", "", { "dependencies": { "yocto-queue": "^1.1.1" } }, "sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA=="],
|
||||
|
||||
"p-queue": ["p-queue@8.1.0", "", { "dependencies": { "eventemitter3": "^5.0.1", "p-timeout": "^6.1.2" } }, "sha512-mxLDbbGIBEXTJL0zEx8JIylaj3xQ7Z/7eEVjcF9fJX4DBiH9oqe+oahYnlKKxm0Ci9TlWTyhSHgygxMxjIB2jw=="],
|
||||
@ -692,6 +738,8 @@
|
||||
|
||||
"parse5": ["parse5@7.3.0", "", { "dependencies": { "entities": "^6.0.0" } }, "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw=="],
|
||||
|
||||
"pathe": ["pathe@1.1.2", "", {}, "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ=="],
|
||||
|
||||
"phosphor-astro": ["phosphor-astro@2.1.0", "", {}, "sha512-qyYUlxF8DbfHc+85DDGPL04ghNBwrVK75EsNsBfYOChiCeCRwAwfbHxj/qqPrrSFPMgh9cUyEvgKYjI/7bjCUA=="],
|
||||
|
||||
"picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="],
|
||||
@ -714,6 +762,8 @@
|
||||
|
||||
"readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="],
|
||||
|
||||
"recast": ["recast@0.23.11", "", { "dependencies": { "ast-types": "^0.16.1", "esprima": "~4.0.0", "source-map": "~0.6.1", "tiny-invariant": "^1.3.3", "tslib": "^2.0.1" } }, "sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA=="],
|
||||
|
||||
"recma-build-jsx": ["recma-build-jsx@1.0.0", "", { "dependencies": { "@types/estree": "^1.0.0", "estree-util-build-jsx": "^3.0.0", "vfile": "^6.0.0" } }, "sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew=="],
|
||||
|
||||
"recma-jsx": ["recma-jsx@1.0.0", "", { "dependencies": { "acorn-jsx": "^5.0.0", "estree-util-to-js": "^2.0.0", "recma-parse": "^1.0.0", "recma-stringify": "^1.0.0", "unified": "^11.0.0" } }, "sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q=="],
|
||||
@ -756,6 +806,8 @@
|
||||
|
||||
"remark-stringify": ["remark-stringify@11.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-to-markdown": "^2.0.0", "unified": "^11.0.0" } }, "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw=="],
|
||||
|
||||
"require-from-string": ["require-from-string@2.0.2", "", {}, "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw=="],
|
||||
|
||||
"restructure": ["restructure@3.0.2", "", {}, "sha512-gSfoiOEA0VPE6Tukkrr7I0RBdE0s7H1eFCDBk05l1KIQT1UIKNc5JZy6jdyW6eYH3aR3g5b3PuL77rq0hvwtAw=="],
|
||||
|
||||
"retext": ["retext@9.0.0", "", { "dependencies": { "@types/nlcst": "^2.0.0", "retext-latin": "^4.0.0", "retext-stringify": "^4.0.0", "unified": "^11.0.0" } }, "sha512-sbMDcpHCNjvlheSgMfEcVrZko3cDzdbe1x/e7G66dFp0Ff7Mldvi2uv6JkJQzdRcvLYE8CA8Oe8siQx8ZOgTcA=="],
|
||||
@ -792,6 +844,8 @@
|
||||
|
||||
"srt-parser-2": ["srt-parser-2@1.2.3", "", { "bin": { "srt-parser-2": "bin/index.js" } }, "sha512-dANP1AyJTI503H0/kXwRza+7QxDB3BqeFvEKTF4MI9lQcBe8JbRUQTKVIGzGABJCwBovEYavZ2Qsdm/s8XKz8A=="],
|
||||
|
||||
"starlight-openapi": ["starlight-openapi@0.19.1", "", { "dependencies": { "@readme/openapi-parser": "^2.7.0", "github-slugger": "^2.0.0", "url-template": "^3.1.1" }, "peerDependencies": { "@astrojs/markdown-remark": ">=6.0.1", "@astrojs/starlight": ">=0.34.0", "astro": ">=5.5.0" } }, "sha512-hEwbLlxpWaEceJM6Cj66Amh/CCDH5mbZ/MO55byWSUmBGmitkmWMUMTPhbSj8Y7MD2SQ7uJ83tcnfaDpfwxk4Q=="],
|
||||
|
||||
"starlight-sidebar-topics": ["starlight-sidebar-topics@0.6.0", "", { "dependencies": { "picomatch": "^4.0.2" }, "peerDependencies": { "@astrojs/starlight": ">=0.32.0" } }, "sha512-ysmOR7zaHYKtk18/mpW4MbEMDioR/ZBsisu9bdQrq0v9BlHWpW7gAdWlqFWO9zdv1P7l0Mo1WKd0wJ0UtqOVEQ=="],
|
||||
|
||||
"starlight-theme-rapide": ["starlight-theme-rapide@0.5.1", "", { "peerDependencies": { "@astrojs/starlight": ">=0.34.0" } }, "sha512-QRF6mzcYHLEX5UpUvOPXVVwISS298siIJLcKextoMLhXcnF12nX+IYJ0LNxFk9XaPbX9uDXIieSBJf5Pztkteg=="],
|
||||
@ -812,6 +866,8 @@
|
||||
|
||||
"tiny-inflate": ["tiny-inflate@1.0.3", "", {}, "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw=="],
|
||||
|
||||
"tiny-invariant": ["tiny-invariant@1.3.3", "", {}, "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg=="],
|
||||
|
||||
"tinyexec": ["tinyexec@0.3.2", "", {}, "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA=="],
|
||||
|
||||
"tinyglobby": ["tinyglobby@0.2.14", "", { "dependencies": { "fdir": "^6.4.4", "picomatch": "^4.0.2" } }, "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ=="],
|
||||
@ -866,6 +922,8 @@
|
||||
|
||||
"unstorage": ["unstorage@1.16.1", "", { "dependencies": { "anymatch": "^3.1.3", "chokidar": "^4.0.3", "destr": "^2.0.5", "h3": "^1.15.3", "lru-cache": "^10.4.3", "node-fetch-native": "^1.6.6", "ofetch": "^1.4.1", "ufo": "^1.6.1" }, "peerDependencies": { "@azure/app-configuration": "^1.8.0", "@azure/cosmos": "^4.2.0", "@azure/data-tables": "^13.3.0", "@azure/identity": "^4.6.0", "@azure/keyvault-secrets": "^4.9.0", "@azure/storage-blob": "^12.26.0", "@capacitor/preferences": "^6.0.3 || ^7.0.0", "@deno/kv": ">=0.9.0", "@netlify/blobs": "^6.5.0 || ^7.0.0 || ^8.1.0 || ^9.0.0 || ^10.0.0", "@planetscale/database": "^1.19.0", "@upstash/redis": "^1.34.3", "@vercel/blob": ">=0.27.1", "@vercel/kv": "^1.0.1", "aws4fetch": "^1.0.20", "db0": ">=0.2.1", "idb-keyval": "^6.2.1", "ioredis": "^5.4.2", "uploadthing": "^7.4.4" }, "optionalPeers": ["@azure/app-configuration", "@azure/cosmos", "@azure/data-tables", "@azure/identity", "@azure/keyvault-secrets", "@azure/storage-blob", "@capacitor/preferences", "@deno/kv", "@netlify/blobs", "@planetscale/database", "@upstash/redis", "@vercel/blob", "@vercel/kv", "aws4fetch", "db0", "idb-keyval", "ioredis", "uploadthing"] }, "sha512-gdpZ3guLDhz+zWIlYP1UwQ259tG5T5vYRzDaHMkQ1bBY1SQPutvZnrRjTFaWUUpseErJIgAZS51h6NOcZVZiqQ=="],
|
||||
|
||||
"url-template": ["url-template@3.1.1", "", {}, "sha512-4oszoaEKE/mQOtAmdMWqIRHmkxWkUZMnXFnjQ5i01CuRSK3uluxcH1MRVVVWmhlnzT1SCDfKxxficm2G37qzCA=="],
|
||||
|
||||
"util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="],
|
||||
|
||||
"vfile": ["vfile@6.0.3", "", { "dependencies": { "@types/unist": "^3.0.0", "vfile-message": "^4.0.0" } }, "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q=="],
|
||||
@ -922,6 +980,8 @@
|
||||
|
||||
"prompts/kleur": ["kleur@3.0.3", "", {}, "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w=="],
|
||||
|
||||
"recast/source-map": ["source-map@0.6.1", "", {}, "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="],
|
||||
|
||||
"ansi-align/string-width/emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="],
|
||||
|
||||
"ansi-align/string-width/strip-ansi": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="],
|
||||
|
||||
@ -11,10 +11,12 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@astrojs/starlight": "^0.35.1",
|
||||
"@lorenzo_lewis/starlight-utils": "^0.3.2",
|
||||
"astro": "^5.6.1",
|
||||
"gsap": "^3.13.0",
|
||||
"phosphor-astro": "^2.1.0",
|
||||
"sharp": "^0.34.2",
|
||||
"starlight-openapi": "^0.19.1",
|
||||
"starlight-sidebar-topics": "^0.6.0",
|
||||
"starlight-theme-rapide": "^0.5.1",
|
||||
"starlight-videos": "^0.3.0"
|
||||
|
||||
1459
website/public/openapi/openapi.json
Normal file
1459
website/public/openapi/openapi.json
Normal file
File diff suppressed because it is too large
Load Diff
BIN
website/src/assets/jan_desktop.png
Normal file
BIN
website/src/assets/jan_desktop.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 209 KiB |
BIN
website/src/assets/jan_everywhere.png
Normal file
BIN
website/src/assets/jan_everywhere.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 619 KiB |
BIN
website/src/assets/jan_sync.png
Normal file
BIN
website/src/assets/jan_sync.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 481 KiB |
BIN
website/src/assets/jan_web.png
Normal file
BIN
website/src/assets/jan_web.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 313 KiB |
227
website/src/components/CustomNav.astro
Normal file
227
website/src/components/CustomNav.astro
Normal file
@ -0,0 +1,227 @@
|
||||
---
|
||||
// Custom navigation component to add Products and API Reference links
|
||||
// This overrides the default Starlight Header component
|
||||
import Search from '@astrojs/starlight/components/Search.astro';
|
||||
import ThemeSelect from '@astrojs/starlight/components/ThemeSelect.astro';
|
||||
---
|
||||
|
||||
<div class="sl-nav-wrapper">
|
||||
<nav class="sl-nav" aria-label="Main">
|
||||
<!-- Left side with title and links -->
|
||||
<div class="sl-nav__left">
|
||||
<!-- Site title/logo -->
|
||||
<a href="/" class="sl-nav__title">
|
||||
👋 Jan
|
||||
</a>
|
||||
|
||||
<!-- Main navigation links -->
|
||||
<div class="sl-nav__links">
|
||||
<a href="/products/" class="sl-nav__link">
|
||||
Products
|
||||
</a>
|
||||
<a href="/api-reference" class="sl-nav__link">
|
||||
API Reference
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Right side items (search, theme toggle, social links, etc.) -->
|
||||
<div class="sl-nav__end">
|
||||
<!-- Search -->
|
||||
<div class="sl-nav__search">
|
||||
<Search />
|
||||
</div>
|
||||
|
||||
<!-- Theme toggle -->
|
||||
<ThemeSelect />
|
||||
|
||||
<!-- Social links -->
|
||||
<div class="sl-nav__social">
|
||||
<a href="https://github.com/menloresearch/jan" class="sl-nav__social-link" aria-label="GitHub">
|
||||
<svg aria-hidden="true" width="16" height="16" viewBox="0 0 24 24" fill="currentColor">
|
||||
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/>
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
|
||||
<style>
|
||||
.sl-nav-wrapper {
|
||||
background: var(--sl-color-bg-nav);
|
||||
border-bottom: 1px solid var(--sl-color-hairline-shade);
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 1000;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.sl-nav {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 0.75rem 1rem;
|
||||
width: 100%;
|
||||
height: var(--sl-nav-height, 3.5rem);
|
||||
}
|
||||
|
||||
.sl-nav__left {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
}
|
||||
|
||||
.sl-nav__title {
|
||||
color: var(--sl-color-text);
|
||||
text-decoration: none;
|
||||
font-size: 1.25rem;
|
||||
font-weight: 600;
|
||||
line-height: 1;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.sl-nav__title:hover {
|
||||
color: var(--sl-color-text-accent);
|
||||
}
|
||||
|
||||
.sl-nav__links {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
margin-left: 0.5rem;
|
||||
}
|
||||
|
||||
.sl-nav__link {
|
||||
color: var(--sl-color-text);
|
||||
text-decoration: none;
|
||||
font-size: 0.9rem;
|
||||
font-weight: 500;
|
||||
padding: 0.5rem 0.75rem;
|
||||
border-radius: 0.375rem;
|
||||
transition: all 0.15s ease;
|
||||
}
|
||||
|
||||
.sl-nav__link:hover {
|
||||
color: #000 !important;
|
||||
background: var(--sl-color-bg-accent);
|
||||
}
|
||||
|
||||
/* Dark mode hover text should be white for contrast */
|
||||
html[data-theme="dark"] .sl-nav__link:hover {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
/* Active state styling for better contrast */
|
||||
.sl-nav__link.active {
|
||||
color: #000 !important;
|
||||
background: var(--sl-color-bg-accent) !important;
|
||||
font-weight: 600 !important;
|
||||
}
|
||||
|
||||
/* Dark mode active state */
|
||||
html[data-theme="dark"] .sl-nav__link.active {
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.sl-nav__end {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 1rem;
|
||||
}
|
||||
|
||||
.sl-nav__search {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.sl-nav__social {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
}
|
||||
|
||||
.sl-nav__social-link {
|
||||
color: var(--sl-color-text-muted);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
border-radius: 0.375rem;
|
||||
transition: all 0.15s ease;
|
||||
}
|
||||
|
||||
.sl-nav__social-link:hover {
|
||||
color: var(--sl-color-text);
|
||||
background: var(--sl-color-bg-accent);
|
||||
}
|
||||
|
||||
/* Hide links on mobile, show hamburger menu instead */
|
||||
@media (max-width: 768px) {
|
||||
.sl-nav__links {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.sl-nav__left {
|
||||
gap: 0.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
/* Responsive adjustments */
|
||||
@media (max-width: 640px) {
|
||||
.sl-nav {
|
||||
padding: 0.5rem 1rem;
|
||||
}
|
||||
|
||||
.sl-nav__title {
|
||||
font-size: 1.125rem;
|
||||
}
|
||||
|
||||
.sl-nav__end {
|
||||
gap: 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Ensure page content doesn't hide behind fixed navbar */
|
||||
:global(body) {
|
||||
padding-top: var(--sl-nav-height, 3.5rem) !important;
|
||||
}
|
||||
|
||||
/* Override any conflicting Starlight body padding */
|
||||
:global(.sl-layout) {
|
||||
padding-top: 0 !important;
|
||||
}
|
||||
|
||||
/* Reduce top margin on main content area */
|
||||
:global(main.sl-content) {
|
||||
margin-top: 0 !important;
|
||||
padding-top: 0.5rem !important;
|
||||
}
|
||||
|
||||
/* Target the main content wrapper */
|
||||
:global(.sl-content__inner) {
|
||||
padding-top: 0 !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
// Add active state highlighting based on current page
|
||||
const currentPath = window.location.pathname;
|
||||
const links = document.querySelectorAll('.sl-nav__link');
|
||||
|
||||
links.forEach(link => {
|
||||
const href = link.getAttribute('href');
|
||||
if (href && currentPath.startsWith(href)) {
|
||||
// Add active class for CSS styling
|
||||
link.classList.add('active');
|
||||
}
|
||||
});
|
||||
|
||||
</script>
|
||||
@ -8,10 +8,10 @@ const { currentPage = 'products' } = Astro.props;
|
||||
|
||||
<nav class="floating-nav">
|
||||
<div class="nav-container">
|
||||
<a href="/" class="nav-logo">Jan</a>
|
||||
<a href="/" class="nav-logo">👋 Jan</a>
|
||||
<div class="nav-links">
|
||||
<a href="/" class={currentPage === 'home' ? 'active' : ''}>Home</a>
|
||||
<a href="/docs" class={currentPage === 'docs' ? 'active' : ''}>Docs</a>
|
||||
<a href="/products" class={currentPage === 'docs' ? 'active' : ''}>Docs</a>
|
||||
<a href="/prods" class={currentPage === 'products' ? 'active' : ''}>Products</a>
|
||||
</div>
|
||||
<button class="dark-mode-toggle" aria-label="Toggle dark mode">
|
||||
|
||||
58
website/src/pages/api-reference.astro
Normal file
58
website/src/pages/api-reference.astro
Normal file
@ -0,0 +1,58 @@
|
||||
---
|
||||
const title = '👋 Jan API Reference';
|
||||
const description = 'Interactive Jan API documentation powered by Scalar';
|
||||
---
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta name="description" content={description} />
|
||||
<title>{title}</title>
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
background: #fff;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
#scalar-api {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
/* Dark mode support */
|
||||
html[data-theme="dark"] body {
|
||||
background: #1a1a1a;
|
||||
color: #fff;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="scalar-api"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/@scalar/api-reference"></script>
|
||||
|
||||
<script is:inline>
|
||||
window.addEventListener('DOMContentLoaded', function() {
|
||||
Scalar.createApiReference('#scalar-api', {
|
||||
url: '/openapi/openapi.json',
|
||||
proxyUrl: 'https://proxy.scalar.com',
|
||||
theme: 'kepler',
|
||||
spec: {
|
||||
info: {
|
||||
title: '👋 Jan API'
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@ -17,51 +17,63 @@ import ReleaseDatabase from '../components/ReleaseDatabase.astro';
|
||||
# Products
|
||||
|
||||
<p className="lead">
|
||||
Jan is evolving from a local AI application to a complete full-stack AI solution that you can self-host. This includes models, applications, and tools to solve real problems.
|
||||
Jan is moving from a local AI application to a complete full-stack AI solution that you can self-host. This includes models,
|
||||
applications, and tools that delights users and help them solve their problems.
|
||||
</p>
|
||||
|
||||
## What We're Building
|
||||
|
||||
**Jan Agent** = Jan Models + Jan Application + Jan Tools
|
||||
**Jan Factory (or Agent)** = Jan Models + Jan Application + Jan Tools
|
||||
|
||||
Unlike other AI assistants that do specific tasks with one model or have many models with a myriad of solutions, Jan provides:
|
||||
- Our own models optimized for local and private use
|
||||
- Applications that work across all your devices
|
||||
- Its own specialised models that are optimised at specific tasks like web-search, creative writing, and translation
|
||||
- Applications that work across all of your devices in an integrated way
|
||||
- Tools that actually get things done
|
||||
|
||||
## Two Modes, One Experience
|
||||
|
||||
### Local (Incognito) Mode
|
||||
|
||||
Run AI models entirely on your device, giving you complete privacy with no internet required.
|
||||
|
||||

|
||||
|
||||
### Cloud Mode
|
||||
|
||||
Connect to more powerful models when needed - either self-hosted or via jan.ai.
|
||||
|
||||

|
||||
|
||||
Users shouldn't need to understand models, APIs, or technical details. Just choose Local for privacy or Cloud for power.
|
||||
|
||||
## Our Product Principles
|
||||
|
||||
### It Just Works
|
||||
### 1) It Just Works
|
||||
|
||||
1. Open Jan, start chatting
|
||||
2. Onboarding is fully available but optional
|
||||
3. Setting up an API key is optional
|
||||
4. Selecting a local model is optional
|
||||
5. Become a power user at your own pace, if you want to
|
||||
|
||||
We handle the complexity.
|
||||
|
||||
### Privacy First, Cloud When Needed
|
||||
Start with complete privacy by default. Add cloud capabilities only when you choose to.
|
||||
### 2) Cloud When Needed
|
||||
|
||||
### Solve Problems, Not Settings
|
||||
Users want answers, not configuration options. Power users can dig deeper, but it's never required.
|
||||
Start completely locally and own your AI models. Add cloud capabilities only when you choose to.
|
||||
|
||||
### 3) Solve Problems, Not Settings
|
||||
|
||||
We help users get to answers quickly answers, not configuration options. Power users can dig deeper, but it's never required.
|
||||
|
||||
## Available on Every Device
|
||||
|
||||
### Jan Desktop
|
||||
|
||||
**Status:** Available Now
|
||||
This is how Jan started and it has been available since day 1. Jan Desktop stives to be:
|
||||
|
||||
Your personal AI workstation that powers all other devices. Run models locally with optional cloud connection.
|
||||
> Your personal AI workstation that helps with our use cases and powers other devices. Run models locally right away
|
||||
or bring an API key to connect to your favorite cloud-based models.
|
||||
|
||||
**Key Features:**
|
||||
- Runs models locally on your hardware
|
||||
@ -79,7 +91,9 @@ Your personal AI workstation that powers all other devices. Run models locally w
|
||||
|
||||
**Status:** Beta Launch Soon
|
||||
|
||||
SaaS version of Jan Server with no setup required. Default cloud mode for mobile and desktop users.
|
||||

|
||||
|
||||
Web-based version of 👋 Jan with no setup required. Same default cloud mode for mobile and desktop users.
|
||||
|
||||
**Key Features:**
|
||||
- No installation needed
|
||||
@ -87,16 +101,40 @@ SaaS version of Jan Server with no setup required. Default cloud mode for mobile
|
||||
- Automatic updates and maintenance
|
||||
- Default cloud backend for mobile apps
|
||||
- Team collaboration features
|
||||
- Share prompts
|
||||
- Share workflows
|
||||
- Collaborate on threads
|
||||
|
||||
**Pricing:**
|
||||
- Free tier: 50 queries/day
|
||||
- Pro tier: Unlimited usage
|
||||
- Free for everyone
|
||||
- Pro:
|
||||
- Access our latest models
|
||||
- Access other cloud providers, no need to bring their API keys
|
||||
- Enterprise:
|
||||
- Self-host or we host it for you
|
||||
- Active support and SLAs
|
||||
- SSO
|
||||
- Team featues
|
||||
|
||||
### Jan Mobile
|
||||
|
||||
**Status:** Coming Q1 2025
|
||||
**Status:** Coming Q4 2025
|
||||
|
||||
Connect to Desktop/Server, run local mode with Jan Nano, same experience everywhere. See detailed information below.
|
||||
Connect to Desktop/Server, run local mode with Jan Nano or Lucy, same experience everywhere.
|
||||
|
||||
Jan Mobile adapts to your situation:
|
||||
|
||||
At Home, you can connect to your Jan Desktop over WiFi
|
||||
|
||||

|
||||
|
||||
At Work, you can connect to your company Jan Server
|
||||
|
||||

|
||||
|
||||
On the Go, you can run Jan Nano on your phone or talk to your favourite cloud-based model
|
||||
|
||||

|
||||
|
||||
**Key Features:**
|
||||
- iOS and Android support
|
||||
@ -175,7 +213,7 @@ No configuration needed. It just works.
|
||||
<tr>
|
||||
<td>Models</td>
|
||||
<td>Wrapper around Claude/GPT</td>
|
||||
<td>Our own models + others</td>
|
||||
<td>Our own models + You can own them</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Dual mode</td>
|
||||
|
||||
46
website/src/pages/products.astro
Normal file
46
website/src/pages/products.astro
Normal file
@ -0,0 +1,46 @@
|
||||
---
|
||||
// Custom Products page with StarlightPage and custom sidebar
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import ProductsContent from '../content/docs/products/index.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Products',
|
||||
description: 'AI that runs where you need it, how you need it'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<ProductsContent />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/models/jan-nano.astro
Normal file
45
website/src/pages/products/models/jan-nano.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/models/jan-nano.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Jan Nano',
|
||||
description: 'Lightweight AI model for mobile and edge devices'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/models/jan-v1.astro
Normal file
45
website/src/pages/products/models/jan-v1.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/models/jan-v1.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Jan v1',
|
||||
description: 'Full-featured AI model for desktop and server deployment'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/platforms/desktop.astro
Normal file
45
website/src/pages/products/platforms/desktop.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/platforms/desktop.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Desktop',
|
||||
description: 'Jan Desktop application for Windows, macOS, and Linux'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/platforms/jan-ai.astro
Normal file
45
website/src/pages/products/platforms/jan-ai.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/platforms/jan-ai.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Jan.ai',
|
||||
description: 'Cloud-based Jan platform accessible from anywhere'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/platforms/mobile.astro
Normal file
45
website/src/pages/products/platforms/mobile.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/platforms/mobile.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Mobile',
|
||||
description: 'Jan mobile app for iOS and Android devices'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/platforms/server.astro
Normal file
45
website/src/pages/products/platforms/server.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/platforms/server.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Server',
|
||||
description: 'Jan server deployment for enterprise and team environments'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/tools/browseruse.astro
Normal file
45
website/src/pages/products/tools/browseruse.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/tools/browseruse.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'BrowserUse',
|
||||
description: 'AI-powered browser automation and web interaction tool'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/tools/deepresearch.astro
Normal file
45
website/src/pages/products/tools/deepresearch.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/tools/deepresearch.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'DeepResearch',
|
||||
description: 'Advanced AI research and analysis tool'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
45
website/src/pages/products/tools/search.astro
Normal file
45
website/src/pages/products/tools/search.astro
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
import StarlightPage from '@astrojs/starlight/components/StarlightPage.astro';
|
||||
import Content from '../../../content/docs/products/tools/search.mdx';
|
||||
---
|
||||
|
||||
<StarlightPage
|
||||
frontmatter={{
|
||||
title: 'Search',
|
||||
description: 'Intelligent search and information retrieval system'
|
||||
}}
|
||||
sidebar={[
|
||||
{
|
||||
label: 'Products',
|
||||
items: [
|
||||
{ label: 'Overview', link: '/products/' },
|
||||
{
|
||||
label: 'Models',
|
||||
items: [
|
||||
{ label: 'Jan Nano', link: '/products/models/jan-nano/' },
|
||||
{ label: 'Jan v1', link: '/products/models/jan-v1/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Platforms',
|
||||
items: [
|
||||
{ label: 'Desktop', link: '/products/platforms/desktop/' },
|
||||
{ label: 'Jan.ai', link: '/products/platforms/jan-ai/' },
|
||||
{ label: 'Mobile', link: '/products/platforms/mobile/' },
|
||||
{ label: 'Server', link: '/products/platforms/server/' },
|
||||
]
|
||||
},
|
||||
{
|
||||
label: 'Tools',
|
||||
items: [
|
||||
{ label: 'BrowserUse', link: '/products/tools/browseruse/' },
|
||||
{ label: 'DeepResearch', link: '/products/tools/deepresearch/' },
|
||||
{ label: 'Search', link: '/products/tools/search/' },
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
>
|
||||
<Content />
|
||||
</StarlightPage>
|
||||
BIN
website/src/pages/view.png
Normal file
BIN
website/src/pages/view.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 355 KiB |
Loading…
x
Reference in New Issue
Block a user