Skip to content
Draft
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
617 commits
Select commit Hold shift + click to select a range
a05c582
chore: fix the rest of the type errors
eliandoran Mar 26, 2026
8b98fdc
feat(standalone): support app CSS
eliandoran Mar 26, 2026
c059370
refactor(core): use own path replacement
eliandoran Mar 26, 2026
a2cace6
feat(standalone): add support for environment variables
eliandoran Mar 26, 2026
ebbb8b3
fix(standalone): unable to switch themes
eliandoran Mar 26, 2026
b47ede7
Merge remote-tracking branch 'origin/main' into feature/standalone_ex…
eliandoran Mar 26, 2026
1a8075e
fix(server): server-side translations missing
eliandoran Mar 26, 2026
247108f
fix(core): desktop crashing due to missing platform check
eliandoran Mar 26, 2026
04136cd
chore(desktop): strange cannot write file because it would overwrite …
eliandoran Mar 26, 2026
e778942
fix(server): custom route depending on helper function
eliandoran Mar 26, 2026
d2524ad
fix(server): wrong use of isElectron
eliandoran Mar 26, 2026
e1079f9
chore(core): fix one more type error
eliandoran Mar 26, 2026
c7cf8d5
chore(core): set up basic vitest
eliandoran Mar 26, 2026
995f39d
Revert "chore(core): set up basic vitest"
eliandoran Mar 26, 2026
296579f
test(server): initialize core
eliandoran Mar 26, 2026
61d37c4
Merge remote-tracking branch 'origin/main' into feature/standalone_ex…
eliandoran Mar 27, 2026
b864c33
chore(standalone): align deps with client
eliandoran Mar 27, 2026
a7001be
chore(standalone): addres requested changes
eliandoran Mar 27, 2026
4c93366
Standalone extra improvements (#9191)
eliandoran Mar 27, 2026
4ffaadd
chore(import): move all services to core (with errors)
eliandoran Mar 27, 2026
ecb467f
chore(import): fix a few type errors
eliandoran Mar 27, 2026
6ce1d31
chore(import): integrate import route into core
eliandoran Mar 27, 2026
ce1f7a4
chore(scripts): deduplicate errors listing
eliandoran Mar 27, 2026
f1d7d34
chore(core): align tsconfig
eliandoran Mar 27, 2026
f81369d
feat(core): support md5 hash
eliandoran Mar 27, 2026
f069b41
chore(standalone): upload middleware with error handling
eliandoran Mar 27, 2026
55f09fe
chore(core): fix usage of Buffer
eliandoran Mar 27, 2026
050cdd0
chore(core): add a few missing constants
eliandoran Mar 27, 2026
a0573c4
fix(core): extension lookup failing in standalone
eliandoran Mar 27, 2026
22c86cf
feat(standalone): basic ZIP support
eliandoran Mar 27, 2026
91d526b
feat(standalone/import): improve importing speed
eliandoran Mar 27, 2026
d29d142
feat(standalone/import): import demo DB
eliandoran Mar 27, 2026
24650ed
fix(setup): demo DB not respected
eliandoran Mar 27, 2026
5b3fb31
fix(core): on new database, opening hidden notes instead of the root
eliandoran Mar 27, 2026
2d4027c
fix(server): depending on unexported zip import service
eliandoran Mar 27, 2026
0211535
fix(edit-docs): missing zip primitives
eliandoran Mar 27, 2026
6c75df7
chore: solve type errors
eliandoran Mar 27, 2026
0ec2160
Standalone import (#9204)
eliandoran Mar 27, 2026
c94ca00
chore(core): relocate export service
eliandoran Mar 27, 2026
21e2cf1
chore(core): relocate export route
eliandoran Mar 27, 2026
a59d6df
chore(core): fix most errors with export
eliandoran Mar 27, 2026
4458d5b
chore(core): fix more errors related to export
eliandoran Mar 27, 2026
d2a0c54
fix(core): get rid of Node dependencies from ZIP export
eliandoran Mar 27, 2026
73f401f
fix(standalone/export): redirects to URL without downloading
eliandoran Mar 27, 2026
0c37b2c
fix(export/single): crash due to use of Buffer
eliandoran Mar 27, 2026
1d050e8
fix(core): use of Node.js path
eliandoran Mar 27, 2026
aee005b
refactor(core): move zip provider out of import
eliandoran Mar 27, 2026
8cd7e48
fix(server): unable to export as share
eliandoran Mar 27, 2026
8b1d006
fix(standalone): unable to download ZIPs
eliandoran Mar 27, 2026
d0abcfe
chore(export): bring back content CSS
eliandoran Mar 27, 2026
6dea4ae
chore(server): address requested changes
eliandoran Mar 28, 2026
3624294
feat(standalone): hide share export
eliandoran Mar 28, 2026
82bac7b
fix(standalone): OPML export failing
eliandoran Mar 28, 2026
8ada23c
feat(server): improve error logging using banner
eliandoran Mar 28, 2026
f04f295
feat(core): use real console width in console banner
eliandoran Mar 28, 2026
9b6c796
fix(server): ws not working
eliandoran Mar 28, 2026
fa6e70a
feat(standalone): get enex import to work
eliandoran Mar 28, 2026
0b784af
chore(core): reintroduce basic non-blocking import for ENEX
eliandoran Mar 28, 2026
7f6a43c
chore(server): fix error in Electron port handling
eliandoran Mar 28, 2026
b4802e9
chore: address requested changes
eliandoran Mar 28, 2026
d084c42
Feature/standalone export (#9205)
eliandoran Mar 28, 2026
4f6de0c
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Mar 28, 2026
3a053d3
refactor(client): fix types related to script execution
eliandoran Mar 28, 2026
b02e9ba
chore(core): integrate scripting services
eliandoran Mar 28, 2026
3bd6777
chore(core): integrate scripting routes
eliandoran Mar 28, 2026
ef70fd2
chore(server): fix references to script service
eliandoran Mar 28, 2026
4d98558
chore(core): set up sucrase
eliandoran Mar 28, 2026
377e874
chore(core): integrate scheduler
eliandoran Mar 28, 2026
936165f
fix(standalone): hidden subtree is slow due to lack of transaction
eliandoran Mar 28, 2026
8e50c9b
chore(core): remove unnecessary newlines
eliandoran Mar 28, 2026
9d6c9ac
chore(core): address requested changes
eliandoran Mar 28, 2026
39b2e8e
Feature/standalone scripting (#9219)
eliandoran Mar 28, 2026
5158df2
fix(build-docs): wailing due to introduction of core
eliandoran Mar 28, 2026
ca0c640
fix(build-docs): backend script generation fails
eliandoran Mar 28, 2026
5fce728
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Mar 31, 2026
93b126d
chore(deps): update pnpm lock
eliandoran Mar 31, 2026
12b9461
Merge remote-tracking branch 'origin/main' into standalone
Copilot Mar 31, 2026
b52e652
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 4, 2026
62a34e9
chore(standalone): fix type errors after merge with main
eliandoran Apr 4, 2026
65176ac
chore(standalone): fix accidental port change
eliandoran Apr 4, 2026
38385ac
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 6, 2026
ae3a96b
fix(standalone): broken due to vite-plugin-static-copy update
eliandoran Apr 6, 2026
6019289
fix(standalone): sqlite3-opfs failing
eliandoran Apr 6, 2026
3cc52b2
fix(standalone): start-prod doesn't have CORS headers
eliandoran Apr 6, 2026
2432112
chore(standalone): update version
eliandoran Apr 6, 2026
0b1122d
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 7, 2026
34c5cfb
fix(scripts): update build info no longer updating
eliandoran Apr 7, 2026
9beb756
feat(standalone): update build info
eliandoran Apr 7, 2026
6945ef5
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 7, 2026
b2e886f
fix(core): wrong package version
eliandoran Apr 7, 2026
94de760
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 9, 2026
d35b55f
fix(server): tests failing due to SQL initialization order
eliandoran Apr 9, 2026
d34ba8b
test(server): integration database not initialized properly
eliandoran Apr 9, 2026
66a18d1
fix(server): in-app help not integrated
eliandoran Apr 9, 2026
dc0fcad
test(server): run core tests
eliandoran Apr 9, 2026
3a7ce0c
test(core): fix initialization issues due to SQL
eliandoran Apr 9, 2026
f40de0a
test(core): fix more tests
eliandoran Apr 9, 2026
6e0e784
fix(server): share tests no longer working
eliandoran Apr 9, 2026
acf9aa8
fix(core): issues with some utils
eliandoran Apr 9, 2026
bfb9df4
test(ocr): broken due to change in architecture
eliandoran Apr 9, 2026
86da56d
test(e2e): broken due to missing rebuild mechanism
eliandoran Apr 9, 2026
515ea96
refactor(core): cleanup expected fails
eliandoran Apr 9, 2026
2f7c054
test(standalone): start running tests
eliandoran Apr 9, 2026
de050b3
test(core): crash due to default test script
eliandoran Apr 9, 2026
aac8c80
test(standalone): use real platform provider
eliandoran Apr 9, 2026
2c2a20b
chore(server): bypass build warning
eliandoran Apr 9, 2026
21302e4
test(standalone): get most tests to pass
eliandoran Apr 9, 2026
7463674
fix(standalone): zip fix wasn't integrated
eliandoran Apr 9, 2026
c83531a
e2e(server): bring back loading of the integration test database
eliandoran Apr 9, 2026
f3f1ce5
test(standalone): happy-dom issue with Markdown import
eliandoran Apr 9, 2026
8e7bd16
fix(docker): cannot access schema and DB
eliandoran Apr 9, 2026
c041c25
fix(server): cannot run server in e2e
eliandoran Apr 9, 2026
7e02e6a
ci(dev): run standalone tests as well
eliandoran Apr 9, 2026
9f32717
Update apps/server/src/in_app_help_provider.ts
eliandoran Apr 9, 2026
10dd506
Reintegrate tests (#9352)
eliandoran Apr 9, 2026
047b6ff
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 9, 2026
231d099
chore(deps): align with main
eliandoran Apr 9, 2026
64764a7
fix(build-docs): process hanging
eliandoran Apr 9, 2026
2dd1dd1
fix(standalone): cyclic dependency breaking prod
eliandoran Apr 12, 2026
8494e0c
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 12, 2026
102cf4c
chore(standalone): reintegrate changes from main lost in the merge
eliandoran Apr 12, 2026
73743b6
fix(server): reintegrate backend log mechanism
eliandoran Apr 12, 2026
814a961
chore(client): dev server not working due to prefresh bug
eliandoran Apr 12, 2026
e7c931d
chore(core): integrate backend log route
eliandoran Apr 12, 2026
24112a9
feat(standalone): introduce backend log handling
eliandoran Apr 12, 2026
8c61cc8
core(standalone): integrate backup management using provider
eliandoran Apr 12, 2026
876008e
refactor(backup): keep only one implementation in core with abstract …
eliandoran Apr 12, 2026
065afd0
chore(standalone): start implementing backup service
eliandoran Apr 12, 2026
9d4ff50
feat(standalone): start working on an image service
eliandoran Apr 12, 2026
b921c3c
chore(core): integrate backup routes
eliandoran Apr 12, 2026
7453740
chore(core): reintroduce image routes
eliandoran Apr 12, 2026
0d5c998
chore(backup): implement standalone regular backup
eliandoran Apr 12, 2026
35317b3
fix(core): error due to CLS on standalone
eliandoran Apr 12, 2026
f034454
refactor(backup): constructor-based dependency injection for options
eliandoran Apr 12, 2026
3ad20e4
refactor(core): get rid of as any for image routes
eliandoran Apr 12, 2026
89b3dec
refactor(backup): pass in options service directly
eliandoran Apr 12, 2026
9f24a44
fix(standalone): crash in logs due to refresh
eliandoran Apr 12, 2026
b46c1e6
feat(standalone): allow downloading backups
eliandoran Apr 12, 2026
f75adfe
fix(standalone): PDFjs not working in dev mode
eliandoran Apr 12, 2026
262ac05
fix(standalone): PDFjs not working in prod mode
eliandoran Apr 12, 2026
3b437d8
chore(core): fix type issue
eliandoran Apr 12, 2026
4b4ef35
feat(standalone): start introducing crypto
eliandoran Apr 12, 2026
8f3f2cc
chore(core): reintroduce encryption and password reset
eliandoran Apr 12, 2026
de037b3
feat(standalone): disable LLM features
eliandoran Apr 12, 2026
395c71f
fix(standalone): encrypt subtree not working
eliandoran Apr 12, 2026
91d4e77
chore(standalone): remove async encryption
eliandoran Apr 12, 2026
1fdc623
fix(core): corruption caused by encryption
eliandoran Apr 12, 2026
8c2e2cc
chore(standalone): address requested changes
eliandoran Apr 12, 2026
113a962
chore(standalone): address second set of requested changes
eliandoran Apr 12, 2026
60540c3
Merge remote-tracking branch 'origin/main' into standalone_stabilization
eliandoran Apr 12, 2026
cae3d14
chore(core): integrate sync timeout migration
eliandoran Apr 12, 2026
5cd1ffb
Standalone stabilization (#9395)
eliandoran Apr 12, 2026
7c53fe5
fix(edit-docs): missing core providers
eliandoran Apr 13, 2026
417228e
e2e: make tests reusable for standalone
eliandoran Apr 19, 2026
2a9976c
feat(ci): run e2e for standalone
eliandoran Apr 19, 2026
3a3f49e
feat(ci): run standalone tests with one worker
eliandoran Apr 19, 2026
c995c15
fix(ci): standalone timing out during build
eliandoran Apr 19, 2026
0f68993
fix(ci): wrong host for standalone
eliandoran Apr 19, 2026
a43cecb
e2e(standalone): integration test database not loaded
eliandoran Apr 19, 2026
c0e01be
e2e(standalone): change startup script
eliandoran Apr 19, 2026
735c112
e2e(standalone): change startup script again
eliandoran Apr 19, 2026
4162806
e2e(standalone): server not starting due to wrong port
eliandoran Apr 19, 2026
2b07e88
e2e(standalone): another attempt at getting the database to load
eliandoran Apr 19, 2026
f44a1f6
e2e(standalone): use different mechanism for handling integration test
eliandoran Apr 19, 2026
c3b1cfd
e2e(standalone): get database to load
eliandoran Apr 19, 2026
1e4c6eb
e2e(standalone): use different seeding mechanism
eliandoran Apr 19, 2026
7fd50a2
e2e(standalone): settings change not intercepted
eliandoran Apr 19, 2026
24d0b3f
e2e(standalone): test failing due to reload mechanism
eliandoran Apr 19, 2026
fb85af4
fix(standalone): change locale after DB init
eliandoran Apr 19, 2026
e30f61b
e2e: make tests reusable for standalone (#9491)
eliandoran Apr 19, 2026
28c6826
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 19, 2026
d97818a
chore(standalone): fix typecheck
eliandoran Apr 19, 2026
b438411
fix(anchors): detection no longer working
eliandoran Apr 19, 2026
e64608d
feat(setup): add RTL support
eliandoran Apr 19, 2026
132c725
feat(standalone): display a more compact badge
eliandoran Apr 19, 2026
095d287
feat(standalone): improve standalone badge on mobile
eliandoran Apr 19, 2026
9ac3fcb
feat(standalone): improve error handling for accessing over HTTP
eliandoran Apr 19, 2026
6a2e48d
feat(standalone): migrate to SAHPool for faster DB
eliandoran Apr 19, 2026
fbbeee9
fix(migration): avoid mutating MIGRATIONS array in-place during sort
github-actions[bot] Apr 19, 2026
7141f23
chore(mobile): start with an empty capacitor app
eliandoran Apr 20, 2026
ed54a7d
chore(mobile): wire it up to client-standalone build
eliandoran Apr 20, 2026
8b44e7c
chore(mobile): init Android project
eliandoran Apr 20, 2026
d6070da
fix(mobile): splash screen never ending
eliandoran Apr 20, 2026
a822f25
Merge branch 'standalone' of github.com:TriliumNext/Trilium into stan…
eliandoran Apr 20, 2026
c703575
Merge remote-tracking branch 'origin/standalone' into standalone-mobi…
eliandoran Apr 20, 2026
6625c60
chore(mobile): build on sync
eliandoran Apr 20, 2026
bf6a2f2
chore(mobile): remove warnings related to COOP/COEP
eliandoran Apr 20, 2026
124603c
feat(ci): build mobile debug APK
eliandoran Apr 20, 2026
9295c86
fix(ci): gradle not executable
eliandoran Apr 20, 2026
4f9304c
feat(server): bake in CORS origins for mobile
eliandoran Apr 20, 2026
a65f9cb
chore(docker): deploy docker for standalone branch
eliandoran Apr 20, 2026
e956d95
chore(mobile): basic icon set
eliandoran Apr 20, 2026
89d8931
chore(mobile): add script to sync
eliandoran Apr 20, 2026
f4790e5
chore(mobile): icon clipped on Pixel 10
eliandoran Apr 20, 2026
97438ed
chore(mobile): icon clipped on Samsung with squircle
eliandoran Apr 20, 2026
4914ff7
chore(mobile): icon clipped on Samsung with squircle
eliandoran Apr 20, 2026
07608a0
feat(mobile): provide monochrome icon too
eliandoran Apr 20, 2026
0e678a6
chore(mobile): add a slighter warmer background
eliandoran Apr 20, 2026
70c42fa
chore(mobile/setup): smaller headings
eliandoran Apr 20, 2026
8c3cbf3
chore(setup): apply mobile class
eliandoran Apr 20, 2026
849afaa
chore(setup): tweak language selection
eliandoran Apr 20, 2026
bb9ff4f
chore(setup): improve language selection
eliandoran Apr 20, 2026
e551e77
chore(setup): improve illustration sizes
eliandoran Apr 20, 2026
8e1e161
chore(setup/mobile): improve safe margins
eliandoran Apr 20, 2026
c3488c0
chore(setup): improve layout on both mobile & desktop
eliandoran Apr 20, 2026
706a75b
chore(mobile): address requested changes
eliandoran Apr 20, 2026
4db5d86
chore(mobile): fix deps
eliandoran Apr 20, 2026
d90f7f2
fix(mobile): close button in unsafe area
eliandoran Apr 20, 2026
4a52bae
feat(mobile/about): hide data directory
eliandoran Apr 20, 2026
a6ddf7d
feat(mobile): add a dedicated badge
eliandoran Apr 20, 2026
ca4e10b
Standalone mobile test (#9513)
eliandoran Apr 20, 2026
683e5ce
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 20, 2026
baf6d33
chore: add standalone:test script
eliandoran Apr 20, 2026
941d75b
Merge branch 'standalone' of https://github.com/TriliumNext/Trilium i…
eliandoran Apr 20, 2026
b92f559
feat(mobile): basic drill-down note navigation
eliandoran Apr 20, 2026
c110930
chore(mobile): enable drill-down only for standalone for now
eliandoran Apr 20, 2026
9e681a7
fix(mobile/nav): initial tree is not shown
eliandoran Apr 20, 2026
e2bce67
feat(mobile/nav): add preview for current note
eliandoran Apr 20, 2026
1714adc
feat(mobile/nav): special handling for leaf children
eliandoran Apr 20, 2026
24469b3
feat(mobile/nav): avoid flicker caused by preview rendering
eliandoran Apr 20, 2026
5d6f4cb
feat(mobile/nav): reduce flickering by showing spinner inline
eliandoran Apr 20, 2026
2e6a643
feat(mobile/nav): reduce flickering when navigating
eliandoran Apr 20, 2026
449a9f1
fix(mobile/nav): no children flickering while navigating
eliandoran Apr 20, 2026
fd3ea7a
feat(mobile/nav): add a short transition
eliandoran Apr 20, 2026
eb5e4fd
fix(tests/standalone): keep core specs passing under happy-dom
eliandoran Apr 20, 2026
bf6bc53
feat(mobile/nav): use different presentation for note content
eliandoran Apr 20, 2026
17fdbf0
feat(mobile/nav): display previous note in the back arrow
eliandoran Apr 20, 2026
ac49c97
feat(mobile/nav): improve handling of empty notes
eliandoran Apr 20, 2026
9784051
feat(mobile/nav): add basic long press menu
eliandoran Apr 21, 2026
6c6d331
feat(mobile/nav): basic support for note colors
eliandoran Apr 21, 2026
167a400
fix(mobile/nav): colors not refreshing
eliandoran Apr 21, 2026
39d85d3
chore(mobile/nav): use reactive note titles
eliandoran Apr 21, 2026
51e687c
fix(mobile/nav): preview gradient shows even when not needed
eliandoran Apr 21, 2026
ac7ccbc
feat(mobile/nav): integrate full context menu for mobile
eliandoran Apr 21, 2026
2afea94
feat(mobile/nav): integrate clipboard and other options
eliandoran Apr 21, 2026
4fabe3c
chore(mobile/nav): hide collapse/expand subtree
eliandoran Apr 21, 2026
547f005
feat(mobile/nav): basic handling of hidden subtree
eliandoran Apr 21, 2026
73af598
fix(mobile/nav): basic handling of hidden subtree
eliandoran Apr 21, 2026
41f5a32
fix(mobile/nav): hoisting doesn't work
eliandoran Apr 21, 2026
4b40ada
feat(mobile/nav): hoisted badge indicator
eliandoran Apr 21, 2026
c509371
chore(mobile/nav): always enable new widget
eliandoran Apr 21, 2026
8d00975
feat(mobile/nav): functional +/[...] buttons for header
eliandoran Apr 21, 2026
2f7f4e9
feat(mobile/nav): improve layout for root
eliandoran Apr 21, 2026
b5735c1
fix(mobile/nav): tree not reacting to changes
eliandoran Apr 21, 2026
885b0b9
chore(mobile/nav): use a thinner border
eliandoran Apr 21, 2026
e135e3a
Merge branch 'standalone' of https://github.com/TriliumNext/Trilium i…
eliandoran Apr 21, 2026
f53cb43
Merge remote-tracking branch 'origin/standalone' into standalone_mobi…
eliandoran Apr 21, 2026
34f09ae
e2e(support): failing after changes in mobile structure
eliandoran Apr 21, 2026
7556c38
Standalone mobile nav (#9525)
eliandoran Apr 21, 2026
29dfd99
Merge remote-tracking branch 'origin/main' into standalone
eliandoran Apr 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
67 changes: 67 additions & 0 deletions .github/workflows/deploy-app.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Deploy Standalone App

on:
# Trigger on push to main branch
push:
branches:
- standalone
# Only run when app files change
paths:
- 'apps/client/**'
- 'apps/client-standalone/**'
- 'packages/trilium-core/**'
- '.github/workflows/deploy-app.yml'

# Allow manual triggering from Actions tab
workflow_dispatch:

# Run on pull requests for preview deployments
pull_request:
paths:
- 'apps/client/**'
- 'apps/client-standalone/**'
- 'packages/trilium-core/**'
- '.github/workflows/deploy-app.yml'
jobs:
build-and-deploy:
name: Build and Deploy App
runs-on: ubuntu-latest
timeout-minutes: 10

# Required permissions for deployment
permissions:
contents: read
deployments: write
pull-requests: write # For PR preview comments
id-token: write # For OIDC authentication (if needed)

steps:
- name: Checkout Repository
uses: actions/checkout@v6

- name: Setup pnpm
uses: pnpm/action-setup@v4

- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: '24'
cache: 'pnpm'

- name: Install Dependencies
run: pnpm install --frozen-lockfile

- name: Trigger build of app
run: pnpm --filter=client-standalone build

- name: Deploy
uses: ./.github/actions/deploy-to-cloudflare-pages
if: github.repository == vars.REPO_MAIN
with:
project_name: "trilium-app"
comment_body: "🖥️ App preview is ready"
production_url: "https://app.triliumnotes.org"
deploy_dir: "apps/client-standalone/dist"
cloudflare_api_token: ${{ secrets.CLOUDFLARE_API_TOKEN }}
cloudflare_account_id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
github_token: ${{ secrets.GITHUB_TOKEN }}
4 changes: 2 additions & 2 deletions .github/workflows/dev.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
name: Dev
on:
push:
branches: [ main ]
branches: [ main, standalone ]
pull_request:
branches: [ main ]
branches: [ main, standalone ]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -51,3 +51,6 @@ upload
site/
apps/*/coverage
scripts/translation/.language*.json

# AI
.claude/settings.local.json
4 changes: 4 additions & 0 deletions apps/client-standalone/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# The development license key for premium CKEditor features.
# Note: This key must only be used for the Trilium Notes project.
VITE_CKEDITOR_KEY=eyJhbGciOiJFUzI1NiJ9.eyJleHAiOjE3ODcyNzA0MDAsImp0aSI6IjkyMWE1MWNlLTliNDMtNGRlMC1iOTQwLTc5ZjM2MDBkYjg1NyIsImRpc3RyaWJ1dGlvbkNoYW5uZWwiOiJ0cmlsaXVtIiwiZmVhdHVyZXMiOlsiVFJJTElVTSJdLCJ2YyI6ImU4YzRhMjBkIn0.hny77p-U4-jTkoqbwPytrEar5ylGCWBN7Ez3SlB8i6_mJCBIeCSTOlVQk_JMiOEq3AGykUMHzWXzjdMFwgniOw
VITE_CKEDITOR_ENABLE_INSPECTOR=false
1 change: 1 addition & 0 deletions apps/client-standalone/.env.production
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
VITE_CKEDITOR_ENABLE_INSPECTOR=false
87 changes: 87 additions & 0 deletions apps/client-standalone/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
{
"name": "@triliumnext/client-standalone",
"version": "0.102.1",
"description": "Standalone client for TriliumNext with SQLite WASM backend",
"private": true,
"license": "AGPL-3.0-only",
"scripts": {
"build": "cross-env NODE_OPTIONS=--max-old-space-size=4096 vite build",
"dev": "vite dev",
"test": "vitest",
"start-prod": "pnpm build && pnpm http-server dist -p 8888",
"coverage": "vitest --coverage"
},
"dependencies": {
"@excalidraw/excalidraw": "0.18.0",
"@fullcalendar/core": "6.1.20",
"@fullcalendar/daygrid": "6.1.20",
"@fullcalendar/interaction": "6.1.20",
"@fullcalendar/list": "6.1.20",
"@fullcalendar/multimonth": "6.1.20",
"@fullcalendar/timegrid": "6.1.20",
"@maplibre/maplibre-gl-leaflet": "0.1.3",
"@mermaid-js/layout-elk": "0.2.0",
"@mind-elixir/node-menu": "5.0.1",
"@popperjs/core": "2.11.8",
"@preact/signals": "2.5.1",
"@sqlite.org/sqlite-wasm": "3.51.1-build2",
"@triliumnext/ckeditor5": "workspace:*",
"@triliumnext/codemirror": "workspace:*",
"@triliumnext/commons": "workspace:*",
"@triliumnext/core": "workspace:*",
"@triliumnext/highlightjs": "workspace:*",
"@triliumnext/share-theme": "workspace:*",
"@triliumnext/split.js": "workspace:*",
"@zumer/snapdom": "2.0.1",
"autocomplete.js": "0.38.1",
"bootstrap": "5.3.8",
"boxicons": "2.1.4",
"clsx": "2.1.1",
"color": "5.0.3",
"debounce": "3.0.0",
"draggabilly": "3.0.0",
"force-graph": "1.51.0",
"globals": "17.0.0",
"i18next": "25.7.3",
"i18next-http-backend": "3.0.2",
"jquery": "3.7.1",
"jquery.fancytree": "2.38.5",
"js-sha1": "0.7.0",
"js-sha256": "0.11.1",
"js-sha512": "0.9.0",
"jsplumb": "2.15.6",
"katex": "0.16.27",
"knockout": "3.5.1",
"leaflet": "1.9.4",
"leaflet-gpx": "2.2.0",
"mark.js": "8.11.1",
"marked": "17.0.1",
"mermaid": "11.12.2",
"mind-elixir": "5.4.0",
"normalize.css": "8.0.1",
"panzoom": "9.4.3",
"preact": "10.28.2",
"react-i18next": "16.5.1",
"react-window": "2.2.3",
"reveal.js": "5.2.1",
"svg-pan-zoom": "3.6.2",
"tabulator-tables": "6.3.1",
"vanilla-js-wheel-zoom": "9.0.4"
},
"devDependencies": {
"@ckeditor/ckeditor5-inspector": "5.0.0",
"@preact/preset-vite": "2.10.2",
"@types/bootstrap": "5.2.10",
"@types/jquery": "3.5.33",
"@types/leaflet": "1.9.21",
"@types/leaflet-gpx": "1.3.8",
"@types/mark.js": "8.11.12",
"@types/reveal.js": "5.2.2",
"@types/tabulator-tables": "6.3.1",
"copy-webpack-plugin": "13.0.1",
"cross-env": "7.0.3",
"happy-dom": "20.0.11",
"script-loader": "0.7.2",
"vite-plugin-static-copy": "3.1.4"
}
}
3 changes: 3 additions & 0 deletions apps/client-standalone/public/_headers
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/*
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp
Binary file added apps/client-standalone/public/favicon.ico
Binary file not shown.
20 changes: 20 additions & 0 deletions apps/client-standalone/public/manifest.webmanifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"name": "Trilium Notes",
"short_name": "Trilium",
"description": "Trilium Notes is a hierarchical note taking application with focus on building large personal knowledge bases.",
"theme_color": "#333333",
"background_color": "#1F1F1F",
"display": "standalone",
"scope": "/",
"start_url": "/",
"display_override": [
"window-controls-overlay"
],
"icons": [
{
"src": "assets/icon.png",
"sizes": "512x512",
"type": "image/png"
}
]
}
2 changes: 2 additions & 0 deletions apps/client-standalone/src/desktop.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
// Re-export desktop from client
export * from "../../client/src/desktop";
31 changes: 31 additions & 0 deletions apps/client-standalone/src/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="favicon.ico">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, viewport-fit=cover" />
<link rel="manifest" crossorigin="use-credentials" href="manifest.webmanifest">
<title>Trilium Notes</title>
</head>

<body id="trilium-app">
<noscript>Trilium requires JavaScript to be enabled.</noscript>

<div id="context-menu-cover"></div>
<div class="dropdown-menu dropdown-menu-sm" id="context-menu-container" style="display: none"></div>

<!-- Required for match the PWA's top bar color with the theme -->
<!-- This works even when the user directly changes --root-background in CSS -->
<div id="background-color-tracker" style="position: absolute; visibility: hidden; color: var(--root-background); transition: color 1ms;"></div>

<!-- Bootstrap (request server for required information) -->
<script src="./main.ts" type="module"></script>

<!-- Required for correct loading of scripts in Electron -->
<script>
if (typeof module === 'object') {window.module = module; module = undefined;}
</script>
</body>
</html>
Loading
Loading