2025-04-22 17:13:17 +03:00
{
"name" : "@triliumnext/server" ,
2025-06-07 12:46:18 +03:00
"version" : "0.94.1" ,
2025-05-03 03:14:23 +03:00
"description" : "The server-side component of TriliumNext, which exposes the client via the web, allows for sync and provides a REST API for both internal and external use." ,
2025-04-22 17:13:17 +03:00
"private" : true ,
2025-05-02 21:29:19 +03:00
"dependencies" : {
2025-05-17 22:15:10 +03:00
"better-sqlite3" : "11.10.0"
2025-04-25 12:15:02 +03:00
} ,
"devDependencies" : {
"@electron/remote" : "2.1.2" ,
"@types/archiver" : "6.0.3" ,
"@types/better-sqlite3" : "7.6.13" ,
"@types/cls-hooked" : "4.3.9" ,
2025-06-08 07:43:23 +00:00
"@types/compression" : "1.8.1" ,
2025-06-08 01:53:26 +00:00
"@types/cookie-parser" : "1.4.9" ,
2025-04-25 12:15:02 +03:00
"@types/debounce" : "1.2.4" ,
"@types/ejs" : "3.1.5" ,
"@types/escape-html" : "1.0.4" ,
"@types/express-http-proxy" : "1.6.6" ,
2025-06-08 01:55:20 +00:00
"@types/express-session" : "1.18.2" ,
2025-04-25 12:15:02 +03:00
"@types/fs-extra" : "11.0.4" ,
"@types/html" : "1.0.4" ,
"@types/ini" : "4.1.1" ,
"@types/js-yaml" : "4.0.9" ,
"@types/jsdom" : "21.1.7" ,
2025-06-08 01:56:48 +00:00
"@types/mime-types" : "3.0.1" ,
2025-06-08 07:31:57 +00:00
"@types/multer" : "1.4.13" ,
2025-04-25 12:15:02 +03:00
"@types/safe-compare" : "1.1.2" ,
2025-05-07 05:55:45 +00:00
"@types/sanitize-html" : "2.16.0" ,
2025-04-25 12:15:02 +03:00
"@types/sax" : "1.2.7" ,
"@types/serve-favicon" : "2.5.7" ,
2025-06-08 01:58:09 +00:00
"@types/serve-static" : "1.15.8" ,
2025-04-25 12:15:02 +03:00
"@types/session-file-store" : "1.2.5" ,
"@types/stream-throttle" : "0.1.4" ,
"@types/supertest" : "6.0.3" ,
"@types/swagger-ui-express" : "4.1.8" ,
"@types/tmp" : "0.2.6" ,
"@types/turndown" : "5.0.5" ,
"@types/ws" : "8.18.1" ,
"@types/xml2js" : "0.4.14" ,
"express-http-proxy" : "2.1.1" ,
2025-06-12 05:53:56 +00:00
"@anthropic-ai/sdk" : "0.54.0" ,
2025-04-23 10:06:37 +03:00
"@braintree/sanitize-url" : "7.1.1" ,
2025-04-23 18:38:47 +03:00
"@triliumnext/commons" : "workspace:*" ,
2025-05-03 01:59:17 +03:00
"@triliumnext/express-partial-content" : "workspace:*" ,
2025-04-23 18:38:47 +03:00
"@triliumnext/turndown-plugin-gfm" : "workspace:*" ,
2025-04-23 10:06:37 +03:00
"archiver" : "7.0.1" ,
"async-mutex" : "0.5.0" ,
2025-05-02 18:04:35 +00:00
"axios" : "1.9.0" ,
2025-04-24 21:45:13 +03:00
"bindings" : "1.5.0" ,
2025-04-23 10:06:37 +03:00
"chardet" : "2.1.0" ,
2025-06-09 00:47:05 +00:00
"cheerio" : "1.1.0" ,
2025-04-23 10:06:37 +03:00
"chokidar" : "4.0.3" ,
"cls-hooked" : "4.2.2" ,
"compression" : "1.8.0" ,
"cookie-parser" : "1.4.7" ,
2025-05-02 18:05:03 +00:00
"csrf-csrf" : "3.2.2" ,
2025-04-23 10:06:37 +03:00
"dayjs" : "1.11.13" ,
"debounce" : "2.2.0" ,
2025-05-14 05:29:11 +00:00
"debug" : "4.4.1" ,
2025-04-23 10:06:37 +03:00
"ejs" : "3.1.10" ,
2025-06-05 09:24:16 +00:00
"electron" : "36.4.0" ,
2025-04-23 10:06:37 +03:00
"electron-debug" : "4.1.0" ,
"electron-window-state" : "5.0.3" ,
"escape-html" : "1.0.3" ,
2025-06-07 11:15:22 +00:00
"express" : "5.1.0" ,
2025-04-22 17:37:02 +03:00
"express-openid-connect" : "^2.17.1" ,
"express-rate-limit" : "7.5.0" ,
"express-session" : "1.18.1" ,
2025-04-24 21:45:13 +03:00
"file-uri-to-path" : "2.0.0" ,
2025-04-23 10:06:37 +03:00
"fs-extra" : "11.3.0" ,
2025-04-22 17:37:02 +03:00
"helmet" : "8.1.0" ,
2025-04-23 10:06:37 +03:00
"html" : "1.0.0" ,
"html2plaintext" : "2.1.4" ,
2025-04-23 18:38:47 +03:00
"http-proxy-agent" : "7.0.2" ,
"https-proxy-agent" : "7.0.6" ,
2025-05-29 01:38:27 +00:00
"i18next" : "25.2.1" ,
2025-04-22 17:37:02 +03:00
"i18next-fs-backend" : "2.6.0" ,
2025-05-20 17:44:04 +00:00
"image-type" : "6.0.0" ,
2025-04-23 10:06:37 +03:00
"ini" : "5.0.0" ,
"is-animated" : "2.0.2" ,
2025-05-02 18:08:59 +00:00
"is-svg" : "6.0.0" ,
2025-04-23 10:06:37 +03:00
"jimp" : "1.6.0" ,
"js-yaml" : "4.1.0" ,
2025-04-22 17:37:02 +03:00
"jsdom" : "26.1.0" ,
2025-05-20 07:14:26 +00:00
"marked" : "15.0.12" ,
2025-04-23 10:06:37 +03:00
"mime-types" : "3.0.1" ,
2025-06-04 07:03:31 +00:00
"multer" : "2.0.1" ,
2025-04-23 10:06:37 +03:00
"normalize-strings" : "1.1.1" ,
2025-05-31 02:58:06 +00:00
"ollama" : "0.5.16" ,
2025-06-11 08:59:30 +00:00
"openai" : "5.3.0" ,
2025-04-23 10:06:37 +03:00
"rand-token" : "1.0.1" ,
2025-04-22 17:37:02 +03:00
"safe-compare" : "1.1.4" ,
"sanitize-filename" : "1.6.3" ,
2025-05-15 02:15:24 +00:00
"sanitize-html" : "2.17.0" ,
2025-04-23 18:38:47 +03:00
"sax" : "1.4.1" ,
2025-06-11 08:34:14 +00:00
"serve-favicon" : "2.5.1" ,
2025-04-23 10:06:37 +03:00
"stream-throttle" : "0.1.3" ,
2025-04-22 17:37:02 +03:00
"strip-bom" : "5.0.0" ,
"striptags" : "3.2.0" ,
2025-05-14 01:40:54 +00:00
"supertest" : "7.1.1" ,
2025-04-23 10:06:37 +03:00
"swagger-jsdoc" : "6.2.8" ,
2025-04-22 17:37:02 +03:00
"swagger-ui-express" : "5.0.1" ,
2025-04-23 10:06:37 +03:00
"time2fa" : "^1.3.0" ,
"tmp" : "0.2.3" ,
"turndown" : "7.2.0" ,
"unescape" : "1.0.1" ,
2025-05-04 07:39:41 +00:00
"ws" : "8.18.2" ,
2025-04-23 10:06:37 +03:00
"xml2js" : "0.6.2" ,
2025-05-21 13:30:46 +03:00
"yauzl" : "3.2.0"
2025-04-22 17:37:02 +03:00
} ,
2025-04-22 17:13:17 +03:00
"nx" : {
2025-04-30 22:28:25 +03:00
"name" : "server" ,
2025-06-09 21:19:54 +03:00
"implicitDependencies" : [
"share-theme"
] ,
2025-04-22 17:13:17 +03:00
"targets" : {
"serve" : {
"executor" : "@nx/js:node" ,
"dependsOn" : [
2025-05-25 22:20:02 +03:00
{
2025-05-27 22:26:52 +03:00
"projects" : [
"client"
] ,
2025-05-25 22:20:02 +03:00
"target" : "serve"
} ,
2025-05-22 11:54:29 +03:00
"build-without-client"
2025-04-22 17:13:17 +03:00
] ,
2025-05-25 22:20:02 +03:00
"continuous" : true ,
2025-04-22 17:13:17 +03:00
"options" : {
2025-05-23 11:56:45 +03:00
"buildTarget" : "server:build-without-client:development" ,
2025-06-04 21:51:46 +03:00
"runBuildTargetDependencies" : false
}
} ,
2025-06-06 18:25:31 +03:00
"serve-nodir" : {
"executor" : "@nx/js:node" ,
"dependsOn" : [
{
"projects" : [
"client"
] ,
"target" : "serve"
} ,
"build-without-client"
] ,
"continuous" : true ,
"options" : {
"buildTarget" : "server:build-without-client:development" ,
"runBuildTargetDependencies" : false
}
} ,
2025-06-04 21:51:46 +03:00
"edit-integration-db" : {
"executor" : "@nx/js:node" ,
"dependsOn" : [
{
"projects" : [
"client"
] ,
"target" : "serve"
} ,
"build-without-client"
] ,
"continuous" : true ,
"options" : {
"buildTarget" : "server:build-without-client:development" ,
2025-04-22 17:13:17 +03:00
"runBuildTargetDependencies" : false
}
2025-04-24 13:34:03 +03:00
} ,
2025-04-27 12:22:10 +03:00
"package" : {
2025-05-02 21:29:19 +03:00
"dependsOn" : [
"build"
] ,
2025-04-27 12:22:10 +03:00
"command" : "bash apps/server/scripts/build-server.sh"
} ,
2025-04-28 22:58:00 +03:00
"start-prod" : {
2025-05-02 21:29:19 +03:00
"dependsOn" : [
"build"
] ,
2025-05-23 11:56:45 +03:00
"command" : "node apps/server/dist/main.cjs"
2025-04-28 22:58:00 +03:00
} ,
2025-04-25 09:54:10 +03:00
"docker-build" : {
"dependsOn" : [
"build"
] ,
2025-04-29 21:54:40 +03:00
"options" : {
"cwd" : "{projectRoot}"
2025-04-29 22:41:26 +03:00
} ,
"executor" : "nx:run-commands" ,
"defaultConfiguration" : "alpine" ,
"configurations" : {
"debian" : {
2025-04-30 10:01:56 +03:00
"command" : "docker build . -t triliumnext-debian -f Dockerfile"
2025-04-29 22:41:26 +03:00
} ,
"alpine" : {
2025-04-30 10:01:56 +03:00
"command" : "docker build . -t triliumnext-alpine -f Dockerfile.alpine"
2025-05-25 21:25:43 +03:00
} ,
"rootless-debian" : {
"command" : "docker build . -t triliumnext-rootless-debian -f Dockerfile.rootless"
} ,
"rootless-alpine" : {
"command" : "docker build . -t triliumnext-rootless-alpine -f Dockerfile.alpine.rootless"
2025-04-29 22:41:26 +03:00
}
2025-04-29 21:54:40 +03:00
}
2025-04-25 11:57:53 +03:00
} ,
"docker-start" : {
"dependsOn" : [
"docker-build"
] ,
2025-04-30 10:01:56 +03:00
"executor" : "nx:run-commands" ,
"defaultConfiguration" : "alpine" ,
"configurations" : {
"debian" : {
"command" : "docker run -p 8081:8080 triliumnext-debian"
} ,
"alpine" : {
"command" : "docker run -p 8081:8080 triliumnext-alpine"
2025-05-25 21:25:43 +03:00
} ,
"rootless-debian" : {
"command" : "docker run -p 8081:8080 triliumnext-rootless-debian"
} ,
"rootless-alpine" : {
"command" : "docker run -p 8081:8080 triliumnext-rootless-alpine"
2025-04-30 10:01:56 +03:00
}
}
2025-05-21 13:30:46 +03:00
} ,
2025-05-22 11:54:29 +03:00
"build-without-client" : {
2025-05-21 13:30:46 +03:00
"executor" : "@nx/esbuild:esbuild" ,
"outputs" : [
"{options.outputPath}"
] ,
"options" : {
"main" : "apps/server/src/main.ts" ,
"outputPath" : "apps/server/dist" ,
"outputFileName" : "main.js" ,
"tsConfig" : "apps/server/tsconfig.app.json" ,
"platform" : "node" ,
"format" : [
2025-05-23 11:56:45 +03:00
"cjs"
2025-05-21 13:30:46 +03:00
] ,
2025-05-27 22:04:09 +03:00
"esbuildOptions" : {
"loader" : {
2025-06-08 22:57:24 +03:00
".css" : "text" ,
".ejs" : "text"
2025-05-27 22:04:09 +03:00
}
} ,
2025-06-09 13:20:41 +03:00
"declarationRootDir" : "apps/server/src" ,
"minify" : false ,
2025-06-12 12:08:45 +03:00
"sourcemap" : true ,
"assets" : [
{
"glob" : "**/*" ,
"input" : "apps/server/src/assets" ,
"output" : "assets"
} ,
{
"glob" : "**/*" ,
"input" : "packages/share-theme/src/templates" ,
"output" : "share-theme/templates"
}
]
2025-05-21 13:30:46 +03:00
}
2025-05-22 11:54:29 +03:00
} ,
"build" : {
2025-05-23 17:11:24 +03:00
"executor" : "@nx/esbuild:esbuild" ,
"outputs" : [
"{options.outputPath}"
] ,
2025-05-22 11:54:29 +03:00
"dependsOn" : [
2025-05-23 17:22:15 +03:00
"^build" ,
2025-05-23 17:11:24 +03:00
"client:build"
] ,
2025-06-11 22:03:25 +03:00
"defaultConfiguration" : "production" ,
"configurations" : {
"production" : {
"minify" : true ,
"sourcemap" : false
} ,
"development" : {
"minify" : false ,
"sourcemap" : true
}
} ,
2025-05-23 17:11:24 +03:00
"options" : {
"main" : "apps/server/src/main.ts" ,
"outputPath" : "apps/server/dist" ,
"tsConfig" : "apps/server/tsconfig.app.json" ,
"platform" : "node" ,
"external" : [
"electron" ,
"@electron/remote" ,
"better-sqlite3" ,
"./xhr-sync-worker.js"
] ,
"format" : [
"cjs"
] ,
"declarationRootDir" : "apps/server/src" ,
"thirdParty" : true ,
2025-05-26 17:50:49 +03:00
"declaration" : false ,
2025-05-23 17:11:24 +03:00
"esbuildOptions" : {
2025-05-25 20:06:04 +03:00
"splitting" : false ,
"loader" : {
2025-06-08 22:57:24 +03:00
".css" : "text" ,
".ejs" : "text"
2025-05-25 20:06:04 +03:00
}
2025-05-23 17:11:24 +03:00
} ,
2025-05-23 22:37:16 +03:00
"additionalEntryPoints" : [
"apps/server/src/docker_healthcheck.ts"
] ,
2025-05-23 17:11:24 +03:00
"assets" : [
{
"glob" : "**/*" ,
"input" : "apps/server/src/assets" ,
"output" : "assets"
} ,
2025-06-09 21:58:56 +03:00
{
"glob" : "**/*" ,
"input" : "packages/share-theme/src/templates" ,
"output" : "share-theme/templates"
} ,
2025-05-23 17:11:24 +03:00
{
"glob" : "**/*" ,
"input" : "apps/client/dist" ,
2025-06-07 13:02:37 +03:00
"output" : "public" ,
"ignore" : [
"webpack-stats.json"
]
2025-05-23 17:11:24 +03:00
} ,
{
"glob" : "**/*" ,
"input" : "apps/server/node_modules/better-sqlite3" ,
"output" : "node_modules/better-sqlite3"
} ,
{
"glob" : "**/*" ,
"input" : "apps/server/node_modules/bindings" ,
"output" : "node_modules/bindings"
} ,
{
"glob" : "**/*" ,
"input" : "apps/server/node_modules/file-uri-to-path" ,
"output" : "node_modules/file-uri-to-path"
} ,
{
"glob" : "xhr-sync-worker.js" ,
"input" : "apps/server/node_modules/jsdom/lib/jsdom/living/xhr" ,
"output" : ""
}
]
}
2025-06-15 15:40:54 +03:00
} ,
"test-build" : {
"dependsOn" : [
"build"
] ,
"command" : "vitest --config {projectRoot}/vitest.build.config.mts"
2025-04-22 17:13:17 +03:00
}
}
2025-05-21 13:30:46 +03:00
} ,
"exports" : {
"./package.json" : "./package.json" ,
2025-05-22 15:37:34 +03:00
"./src/*" : "./src/*" ,
2025-05-21 13:30:46 +03:00
"." : {
"development" : "./src/main.ts" ,
"types" : "./dist/main.d.ts" ,
"import" : "./dist/main.js" ,
"default" : "./dist/main.js"
}
} ,
"types" : "./dist/main.d.ts" ,
"module" : "./dist/main.js" ,
"main" : "./dist/main.js"
2025-05-02 21:29:19 +03:00
}