Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port 0.63.7 #4814

Closed
wants to merge 292 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
292 commits
Select commit Hold shift + click to select a range
1e91db8
server-ts: Implement review comments
eliandoran Feb 17, 2024
a06aa9d
server-ts: Port anonymization service
eliandoran Feb 17, 2024
9826fed
server-ts: Port app* services
eliandoran Feb 17, 2024
a183f21
server-ts: Convert attribute_formatter
eliandoran Feb 17, 2024
5916a8b
server-ts: Fix build errors
eliandoran Feb 17, 2024
6b8ee08
server-ts: Port keyboard_actions
eliandoran Feb 17, 2024
8936a3f
server-ts: Port backup service
eliandoran Feb 17, 2024
a58abff
server-ts: Port migration service
eliandoran Feb 17, 2024
246a90d
server-ts: Port revisions service
eliandoran Feb 17, 2024
56ca0ea
server-ts: Port migration, port, sql_init services
eliandoran Feb 17, 2024
1b58dbe
server-ts: Port etapi_tokens service
eliandoran Feb 17, 2024
a029ee2
server-ts: Fix export
eliandoran Feb 17, 2024
1c7532d
server-ts: Port sync_options
eliandoran Feb 17, 2024
3b7812f
server-ts: Port becca/entity_constructor
eliandoran Feb 17, 2024
9f99b42
server-ts: Port becca/becca_service
eliandoran Feb 17, 2024
3d5ef81
server-ts: Simplify deferred promise in sql_init
eliandoran Feb 17, 2024
d35613f
server-ts: Port becca_loader
eliandoran Feb 17, 2024
748a551
server-ts: Port similarity
eliandoran Feb 17, 2024
45582eb
server-ts: Port services/meta/*
eliandoran Feb 17, 2024
f31d788
server-ts: Port services/auth
eliandoran Feb 17, 2024
77fb7bc
server-ts: Port services/erase
eliandoran Feb 17, 2024
00c692c
server-ts: Port services/note_types
eliandoran Feb 17, 2024
dc22d05
server-ts: Port services/html_sanitizer
eliandoran Feb 17, 2024
6699889
server-ts: Port services/request
eliandoran Feb 17, 2024
de7f4de
server-ts: Port services/notes & hidden_subtree
eliandoran Feb 17, 2024
5d68372
server-ts: Change data type
eliandoran Feb 17, 2024
1010d11
server-ts: Port services/hoisted_note
eliandoran Feb 17, 2024
fbf77f3
server-ts: Port services/search/search_context
eliandoran Feb 17, 2024
80e6ced
server-ts: Port services/search/search_result
eliandoran Feb 17, 2024
216f3f2
server-ts: Port services/search/value_extractor
eliandoran Feb 17, 2024
ce60fc0
server-ts: Port services/search/expressions/expression
eliandoran Feb 17, 2024
414515b
server-ts: Port services/search/expressions/ancestor
eliandoran Feb 17, 2024
8d2eddd
server-ts: Port services/search/expressions/true
eliandoran Feb 17, 2024
7018cc7
server-ts: Port services/search/expressions/and
eliandoran Feb 17, 2024
0df4886
server-ts: Port services/search/expressions/attribute_exists
eliandoran Feb 17, 2024
ccc51e0
server-ts: Port services/search/expressions/child_of
eliandoran Feb 17, 2024
35886c3
server-ts: Port services/search/expressions/descendant_of
eliandoran Feb 17, 2024
acb31b6
server-ts: Port services/search/expressions/is_hidden
eliandoran Feb 17, 2024
571c9f5
server-ts: Port services/search/expressions/label_comparison
eliandoran Feb 17, 2024
3df6acd
server-ts: Port services/search/expressions/not
eliandoran Feb 17, 2024
414964e
server-ts: Port services/search/expressions/note_content_fulltext
eliandoran Feb 17, 2024
460982d
server-ts: Port services/search/expressions/note_flat_text
eliandoran Feb 17, 2024
c63d05b
server-ts: Port services/search/expressions/or
eliandoran Feb 17, 2024
87708aa
server-ts: Port services/search/expressions/order_by_and_limit
eliandoran Feb 17, 2024
0f7f0ce
server-ts: Port services/search/expressions/parent_of
eliandoran Feb 17, 2024
f5b690d
server-ts: Port services/search/expressions/relation_where
eliandoran Feb 17, 2024
8acb641
server-ts: Port services/search/services/build_comparator
eliandoran Feb 17, 2024
deed58c
server-ts: Port services/search/services/handle_parens
eliandoran Feb 17, 2024
533a597
server-ts: Port services/search/services/lex
eliandoran Feb 17, 2024
29b3fb3
server-ts: Port services/search/expressions/property_comparison
eliandoran Feb 17, 2024
1516928
server-ts: Port services/search/services/parse
eliandoran Feb 18, 2024
2fbd2e3
server-ts: Port services/search/services/search
eliandoran Feb 18, 2024
d8d7293
server-ts: Port services/attributes
eliandoran Feb 18, 2024
0d4fb42
server-ts: Port services/tree
eliandoran Feb 18, 2024
9ea4fcd
server-ts: Port services/branches
eliandoran Feb 18, 2024
ddcbb29
server-ts: Update script to display remaining filelist
eliandoran Feb 18, 2024
330334d
server-ts: Port services/window
eliandoran Feb 18, 2024
3ea4b7a
server-ts: Port services/tray
eliandoran Feb 18, 2024
0ba80b1
server-ts: Port services/sync_update
eliandoran Feb 18, 2024
43c89c0
server-ts: Port services/content_hash
eliandoran Feb 18, 2024
d89b791
server-ts: Port services/sync
eliandoran Feb 18, 2024
e4556af
server-ts: Port services/session_secret
eliandoran Feb 18, 2024
6cedad0
server-ts: Port services/cloning
eliandoran Feb 18, 2024
6df09cb
server-ts: Port services/bulk_actions
eliandoran Feb 18, 2024
dbccf6b
server-ts: Port services/one_time_timer
eliandoran Feb 18, 2024
45cb7ce
server-ts: Port services/host
eliandoran Feb 18, 2024
5f4f30f
server-ts: Port services/options_init
eliandoran Feb 18, 2024
3030fbe
server-ts: Port services/notes
eliandoran Feb 18, 2024
91ddabb
server-ts: Remove redundant file
eliandoran Feb 18, 2024
3d9da26
server-ts: Address review comments
eliandoran Feb 18, 2024
aff1c30
server-ts: FIXME -> TODO
eliandoran Feb 18, 2024
11c7533
Merge branch 'feature/typescript_backend' into feature/typescript_bac…
eliandoran Feb 18, 2024
cbc01e1
server-ts: FIXME -> TODO
eliandoran Feb 18, 2024
0903cf2
Merge branch 'feature/typescript_backend_2' into feature/typescript_b…
eliandoran Feb 18, 2024
ec4bd66
server-ts: Port services/export/md
eliandoran Feb 19, 2024
cfeb0cc
server-ts: Port services/export/opml
eliandoran Feb 19, 2024
1728365
server-ts: Port services/export/single
eliandoran Feb 19, 2024
29d37c4
server-ts: Port services/export/zip
eliandoran Feb 19, 2024
fa0ed35
server-ts: Port services/image
eliandoran Feb 20, 2024
052a0a4
server-ts: Port services/import/utils
eliandoran Feb 25, 2024
fd37fd3
server-ts: Port services/import/mime
eliandoran Feb 25, 2024
cc1a545
server-ts: Port services/import/opml
eliandoran Feb 25, 2024
59d618f
server-ts: Port services/import/markdown
eliandoran Feb 25, 2024
7f01021
server-ts: Port services/import/single
eliandoran Feb 25, 2024
8c5f680
server-ts: Fix build errors
eliandoran Feb 25, 2024
9f6a8dc
server-ts: Fix undefined in ws
eliandoran Mar 17, 2024
040ed39
server-ts: Fix undefined in task_context
eliandoran Mar 17, 2024
cbad582
server-ts: Solve requested changes
eliandoran Mar 17, 2024
926b3e9
Merge remote-tracking branch 'origin/develop' into feature/typescript…
eliandoran Mar 17, 2024
5e5add7
Merge remote-tracking branch 'origin/develop' into feature/typescript…
eliandoran Mar 30, 2024
3eb7ed5
server-ts: Address requested changes
eliandoran Mar 30, 2024
db2b337
Merge branch 'feature/typescript_backend' into feature/typescript_bac…
eliandoran Mar 30, 2024
08f0c01
server-ts: Solve build errors after merge
eliandoran Mar 30, 2024
adc384a
Merge pull request #13 from TriliumNext/feature/typescript_backend
eliandoran Apr 2, 2024
b84b276
server-ts: Fix some issues from self-review
eliandoran Apr 2, 2024
090d353
Merge branch 'feature/typescript_backend_2' into feature/typescript_b…
eliandoran Apr 2, 2024
a420129
server-ts: Fix build errors after merge
eliandoran Apr 2, 2024
d4c8d24
server-ts: Address some review comments
eliandoran Apr 2, 2024
99d5095
server-ts: Address self-review
eliandoran Apr 2, 2024
0daa4cc
Merge branch 'feature/typescript_backend_3' into feature/typescript_b…
eliandoran Apr 2, 2024
e96b56e
server-ts: Fix build errors
eliandoran Apr 2, 2024
a354b54
server-ts: Fix getContent in updateNoteData
eliandoran Apr 3, 2024
f857b8a
server-ts: Refactor out abstract init in entities
eliandoran Apr 3, 2024
5d452a1
server-ts: Address review
eliandoran Apr 3, 2024
17c7e2d
server-ts: Address further suggestions
eliandoran Apr 3, 2024
5baabec
Merge branch 'feature/typescript_backend_2' into feature/typescript_b…
eliandoran Apr 3, 2024
ed47c23
Merge branch 'feature/typescript_backend_3' into feature/typescript_b…
eliandoran Apr 3, 2024
aa233b8
server-ts: Port consistency_checks
eliandoran Apr 3, 2024
764d251
server-ts: Port services/import/enex
eliandoran Mar 17, 2024
53d4873
server-ts: Port services/import/zip
eliandoran Apr 3, 2024
915de23
server-ts: Port services/anonymize
eliandoran Apr 3, 2024
16283d4
server-ts: Port services/spaced_update
eliandoran Apr 3, 2024
984ce49
server-ts: Port services/special_notes
eliandoran Apr 3, 2024
532ed1d
server-ts: Port services/setup
eliandoran Apr 3, 2024
a154dc7
server-ts: Port services/options
eliandoran Apr 3, 2024
15dee4b
server-ts: Convert services/backend_script_api
eliandoran Apr 4, 2024
884b661
server-ts: Convert services/script_context
eliandoran Apr 4, 2024
59c533c
server-ts: Convert services/script
eliandoran Apr 4, 2024
92ca32b
server-ts: Convert services/handlers
eliandoran Apr 4, 2024
ea36b37
server-ts: Convert services/scheduler
eliandoran Apr 4, 2024
b13ad5d
server-ts: Convert routes/api/app_info
eliandoran Apr 5, 2024
9330241
server-ts: Convert routes/api/attachments
eliandoran Apr 5, 2024
c0349b3
server-ts: Convert routes/api/attributes
eliandoran Apr 5, 2024
82f5553
server-ts: Convert routes/api/autocomplete
eliandoran Apr 5, 2024
706b9d0
server-ts: Convert routes/api/backend_log
eliandoran Apr 5, 2024
fd77c5e
server-ts: Convert routes/api/branches
eliandoran Apr 5, 2024
40ef533
server-ts: Convert routes/api/bulk_action
eliandoran Apr 5, 2024
f98f84d
server-ts: Convert routes/api/bnote
eliandoran Apr 5, 2024
122ff3b
server-ts: Convert routes/api/cloning
eliandoran Apr 5, 2024
27637b0
server-ts: Convert routes/api/consistency_checks
eliandoran Apr 5, 2024
e451237
server-ts: Convert routes/api/etapi_tokens
eliandoran Apr 5, 2024
952c3cc
server-ts: Convert routes/api/export
eliandoran Apr 5, 2024
0ab137d
server-ts: Convert routes/api/files
eliandoran Apr 5, 2024
b552f40
server-ts: Convert routes/api/fonts
eliandoran Apr 5, 2024
291b791
server-ts: Convert routes/api/image
eliandoran Apr 6, 2024
3902719
server-ts: Convert routes/api/import
eliandoran Apr 6, 2024
b0d6035
server-ts: Convert routes/api/keys
eliandoran Apr 6, 2024
b1744c3
server-ts: Convert routes/api/login
eliandoran Apr 6, 2024
37697c7
server-ts: Convert routes/api/note_map
eliandoran Apr 6, 2024
c63c7d5
server-ts: Convert routes/api/notes
eliandoran Apr 6, 2024
3d75366
server-ts: Convert routes/api/options
eliandoran Apr 6, 2024
eb7a7e4
server-ts: Convert routes/api/other
eliandoran Apr 6, 2024
4b1c351
server-ts: Convert routes/api/password
eliandoran Apr 6, 2024
66d7548
server-ts: Convert routes/api/recent_changes
eliandoran Apr 6, 2024
96c8c90
server-ts: Convert routes/api/recent_notes
eliandoran Apr 6, 2024
b50ceaf
server-ts: Convert routes/api/relation-map
eliandoran Apr 6, 2024
4ab6f15
server-ts: Fix "Missing or incorrect type for target branch ID"
eliandoran Apr 6, 2024
6265aa9
server-ts: Convert routes/api/revisions
eliandoran Apr 6, 2024
de42df4
server-ts: Convert routes/api/script
eliandoran Apr 6, 2024
fa82158
server-ts: Convert routes/api/search
eliandoran Apr 6, 2024
90cf913
server-ts: Convert routes/api/sender
eliandoran Apr 6, 2024
5804dc5
server-ts: Convert routes/api/setup
eliandoran Apr 6, 2024
249e81c
server-ts: Convert routes/api/similar_notes
eliandoran Apr 6, 2024
c1875a8
server-ts: Convert routes/api/special_notes
eliandoran Apr 6, 2024
cecfc4c
server-ts: Convert routes/api/sql
eliandoran Apr 6, 2024
6bbb1f8
server-ts: Convert routes/api/stats
eliandoran Apr 6, 2024
7a98718
server-ts: Convert routes/api/sync
eliandoran Apr 6, 2024
6e042c2
server-ts: Convert routes/api/tree
eliandoran Apr 6, 2024
79c9d7e
server-ts: Convert routes/assets
eliandoran Apr 7, 2024
4940207
server-ts: Convert routes/custom
eliandoran Apr 7, 2024
202fda3
server-ts: Convert routes/electron
eliandoran Apr 7, 2024
c2eefad
server-ts: Convert routes/error_handlers
eliandoran Apr 7, 2024
7fe6d1a
server-ts: Convert routes/login
eliandoran Apr 7, 2024
34cd2eb
server-ts: Remove use of (req as any)
eliandoran Apr 7, 2024
2e906af
server-ts: Convert routes/session_parser
eliandoran Apr 7, 2024
a18b054
server-ts: Convert routes/setup
eliandoran Apr 7, 2024
10c21d3
server-ts: Convert routes/index
eliandoran Apr 7, 2024
b8eb301
server-ts: Add types for multer
eliandoran Apr 7, 2024
569bdf1
server-ts: Convert etapi/etapi_utils
eliandoran Apr 7, 2024
26859e8
server-ts: Convert etapi/app_info
eliandoran Apr 7, 2024
4bb46ae
server-ts: Convert etapi/mappers
eliandoran Apr 7, 2024
3bd7231
server-ts: Convert etapi/validators
eliandoran Apr 7, 2024
a6de065
server-ts: Convert etapi/attachments
eliandoran Apr 7, 2024
1e2a30a
server-ts: Convert etapi/attributes
eliandoran Apr 7, 2024
071f940
server-ts: Convert etapi/auth
eliandoran Apr 7, 2024
602b498
server-ts: Convert etapi/backup
eliandoran Apr 7, 2024
e402440
server-ts: Convert etapi/bbranches
eliandoran Apr 7, 2024
5fdf094
server-ts: Convert etapi/notes
eliandoran Apr 7, 2024
9b9b452
server-ts: Convert etapi/spec
eliandoran Apr 7, 2024
ed79c1c
server-ts: Convert etapi/special_notes
eliandoran Apr 7, 2024
7444127
server-ts: Fix getAttribute permitting null
eliandoran Apr 9, 2024
d8c2ba0
Merge branch 'feature/typescript_backend_6' into feature/typescript_b…
eliandoran Apr 9, 2024
22477f9
Merge branch 'feature/typescript_backend_6' into feature/typescript_b…
eliandoran Apr 9, 2024
2a99ecc
Merge branch 'feature/typescript_backend_6' into feature/typescript_b…
eliandoran Apr 9, 2024
39e152b
Merge branch 'feature/typescript_backend_6' into feature/typescript_b…
eliandoran Apr 9, 2024
45e3632
server-ts: Port share/shaca/abstract_shaca_entity
eliandoran Apr 9, 2024
80a1b8b
server-ts: Port share/sql
eliandoran Apr 9, 2024
b07df60
server-ts: Port share/share_root
eliandoran Apr 9, 2024
3e4b0d5
server-ts: Port share/shaca/snote
eliandoran Apr 9, 2024
c4c2259
server-ts: Port share/shaca/sattachment
eliandoran Apr 9, 2024
e1d74cd
server-ts: Port share/shaca/sattribute
eliandoran Apr 9, 2024
0865e90
server-ts: Port share/shaca/sbranch
eliandoran Apr 9, 2024
b3c2602
server-ts: Port share/shaca/shaca
eliandoran Apr 9, 2024
7c76d28
server-ts: Port share/shaca/shaca_loader
eliandoran Apr 9, 2024
88aba1c
server-ts: Port share/shaca/content_renderer
eliandoran Apr 9, 2024
c08393f
server-ts: Port share/routes
eliandoran Apr 10, 2024
a7ae16b
Merge pull request #18 from TriliumNext/feature/typescript_backend_2
eliandoran Apr 10, 2024
8acfb5b
Merge pull request #25 from TriliumNext/feature/typescript_backend_3
eliandoran Apr 10, 2024
fb32ab9
server-ts: Address requested changes
eliandoran Apr 10, 2024
32e34ee
Merge branch 'feature/typescript_backend_5' into feature/typescript_b…
eliandoran Apr 10, 2024
b517b18
Merge branch 'feature/typescript_backend_5' into feature/typescript_b…
eliandoran Apr 10, 2024
8297e1a
Merge branch 'feature/typescript_backend_5' into feature/typescript_b…
eliandoran Apr 10, 2024
8629993
Merge branch 'feature/typescript_backend_5' into feature/typescript_b…
eliandoran Apr 10, 2024
17eda95
Merge branch 'feature/typescript_backend_5' into feature/typescript_b…
eliandoran Apr 10, 2024
1ac65ff
server-ts: Address requested changes
eliandoran Apr 11, 2024
4638351
server-ts: Update progress script
eliandoran Apr 11, 2024
dededcd
server-ts: Port routes/routes
eliandoran Apr 11, 2024
9022bc3
server-ts: Port app
eliandoran Apr 11, 2024
ae29699
server-ts: Port www
eliandoran Apr 11, 2024
a66e443
server-ts: Address requested changes
eliandoran Apr 13, 2024
6ac3c17
Merge pull request #28 from TriliumNext/feature/typescript_backend_4
eliandoran Apr 15, 2024
4c69384
Merge pull request #41 from TriliumNext/feature/typescript_backend_5
eliandoran Apr 15, 2024
97230ca
server-ts: Remove some esdoc types
eliandoran Apr 15, 2024
a072016
Merge pull request #42 from TriliumNext/feature/typescript_backend_6
eliandoran Apr 15, 2024
1372cc1
server-ts: Fix regression
eliandoran Apr 15, 2024
98d1290
Merge pull request #43 from TriliumNext/feature/typescript_backend_7
eliandoran Apr 15, 2024
625d935
Merge pull request #44 from TriliumNext/feature/typescript_backend_8
eliandoran Apr 16, 2024
138be84
server-ts: Address requested changes
eliandoran Apr 16, 2024
c814187
server-ts: Address review
eliandoran Apr 17, 2024
262e4db
server-ts: Remove unnecessary type comments
eliandoran Apr 17, 2024
1d1ccc8
server-ts: Fix regression
eliandoran Apr 17, 2024
67cb02e
server-ts: Address some more review comments
eliandoran Apr 17, 2024
0d700d6
server-ts: Address review
eliandoran Apr 17, 2024
15168fb
server-ts: Use unknown for validators
eliandoran Apr 18, 2024
19cf9df
Merge pull request #45 from TriliumNext/feature/typescript_backend_9
eliandoran Apr 20, 2024
2771bd4
Merge pull request #47 from TriliumNext/feature/typescript_backend_10
eliandoran Apr 20, 2024
a68b75f
Merge pull request #48 from TriliumNext/feature/typescript_backend_11
eliandoran Apr 20, 2024
c8adf2a
fix: restore start-electron script functionality
alexpietsch Apr 28, 2024
8c0ce17
fix: script permissions
alexpietsch Apr 29, 2024
0a69ed9
fix: add postinstall step
alexpietsch Apr 29, 2024
e2b4eaf
fix: copy only necessary modules
alexpietsch Apr 29, 2024
d2604e9
feat: add ts script for cross plattform use
alexpietsch Apr 30, 2024
3e82d30
fix: skipLibCheck
alexpietsch May 1, 2024
5f53942
fix: set prototype
alexpietsch May 5, 2024
2d67abb
Merge branch 'zadam:master' into develop
eliandoran May 7, 2024
045f318
Merge pull request #60 from TriliumNext/fix/start-electron
eliandoran May 8, 2024
ade6d08
Merge pull request #67 from TriliumNext/fix/EtapiError-prototype
eliandoran May 8, 2024
9775a8b
feat: Add prettier config (#165)
alexpietsch May 31, 2024
40dfc46
add links to readme
alexpietsch May 31, 2024
44ad22c
Merge pull request #167 from TriliumNext/feat/chatroom-links
eliandoran Jun 3, 2024
8eb1e80
Add "unofficial" section, and add some fancier wording around "discus…
perfectra1n Jun 16, 2024
ec2e6f2
Update README.md
perfectra1n Jun 16, 2024
47c5f60
Merge pull request #179 from TriliumNext/perfectra1n-patch-1
perfectra1n Jun 18, 2024
a80a857
Update README.md (#171)
meichthys Jul 2, 2024
1cff016
Revert "Update README.md (#171)"
meichthys Jul 3, 2024
4e93209
- Update chat link to link to Matrix space instead of single room
meichthys Jul 3, 2024
5f23a4e
Fix TrilumRocks Link
meichthys Jul 3, 2024
374b1f9
Disable format on save for VS Code
eliandoran Jul 12, 2024
e7c3dab
Merge pull request #194 from TriliumNext/feature/disable_format_on_save
eliandoran Jul 13, 2024
d5c1bd1
Merge remote-tracking branch 'upstream/master' into feature/port_0.63.7
eliandoran Jul 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"printWidth": 200,
"tabWidth": 4,
"useTabs": false,
"semi": true,
"singleQuote": true,
"quoteProps": "as-needed",
"trailingComma": "none",
"bracketSpacing": false,
"arrowParens": "always",
"proseWrap": "preserve",
"htmlWhitespaceSensitivity": "css",
"endOfLine": "lf"
}
6 changes: 4 additions & 2 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
{
"editor.formatOnSave": true,
"files.eol": "\n"
"editor.formatOnSave": false,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"files.eol": "\n",
"typescript.tsdk": "node_modules/typescript/lib"
}
96 changes: 51 additions & 45 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,89 +1,95 @@
# Trilium Notes
# TriliumNext Notes

## Trilium is in maintenance mode - see details in https://github.com/zadam/trilium/issues/4620
[English](https://github.com/TriliumNext/Notes/blob/master/README.md) | [Chinese](https://github.com/TriliumNext/Notes/blob/master/README-ZH_CN.md) | [Russian](https://github.com/TriliumNext/Notes/blob/master/README.ru.md) | [Japanese](https://github.com/TriliumNext/Notes/blob/master/README.ja.md) | [Italian](https://github.com/TriliumNext/Notes/blob/master/README.it.md)

Preliminary disccusions on the successor organization are taking place in [Trilium Next discussions](https://github.com/orgs/TriliumNext/discussions).
TriliumNext Notes is a hierarchical note taking application with focus on building large personal knowledge bases.

[![Join the chat at https://gitter.im/trilium-notes/Lobby](https://badges.gitter.im/trilium-notes/Lobby.svg)](https://gitter.im/trilium-notes/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [English](https://github.com/zadam/trilium/blob/master/README.md) | [Chinese](https://github.com/zadam/trilium/blob/master/README-ZH_CN.md) | [Russian](https://github.com/zadam/trilium/blob/master/README.ru.md) | [Japanese](https://github.com/zadam/trilium/blob/master/README.ja.md) | [Italian](https://github.com/zadam/trilium/blob/master/README.it.md)
See [screenshots](https://triliumnext.github.io/Docs/Wiki/Screenshot%20tour) for quick overview:

<a href="https://triliumnext.github.io/Docs/Wiki/Screenshot%20tour"><img src="https://github.com/TriliumNext/Docs/blob/main/Wiki/images/screenshot.png?raw=true" alt="Trilium Screenshot" width="1000"></a>

Trilium Notes is a hierarchical note taking application with focus on building large personal knowledge bases.
## ⚠️ Why TriliumNext?

See [screenshots](https://github.com/zadam/trilium/wiki/Screenshot-tour) for quick overview:
[The original Trilium project is in maintenance mode](https://github.com/zadam/trilium/issues/4620)

<a href="https://github.com/zadam/trilium/wiki/Screenshot-tour"><img src="https://raw.githubusercontent.com/wiki/zadam/trilium/images/screenshot.png" alt="Trilium Screenshot" width="1000"></a>
## 🗭 Discuss with us

Ukraine is currently defending itself from Russian aggression, please consider [donating to Ukrainian Army or humanitarian charities](https://standforukraine.com/).
Feel free to join our official discussions and community. We are focused on the development on Trilium, and would love to hear what features, suggestions, or issues you may have!

<p float="left">
<img src="https://upload.wikimedia.org/wikipedia/commons/4/49/Flag_of_Ukraine.svg" alt="drawing" width="400"/>
<img src="https://signmyrocket.com//uploads/2b2a523cd0c0e76cdbba95a89a9636b2_1676971281.jpg" alt="Trilium Notes supports Ukraine!" width="570"/>
</p>
- [Matrix](https://matrix.to/#/#triliumnext:matrix.org) (For synchronous discussions)
- [Github Discussions](https://github.com/TriliumNext/Notes/discussions) (For Asynchronous discussions)
- [Wiki](https://github.com/zadam/trilium/wiki) (For common how-to questions and user guides)

The two rooms linked above are mirrored, so you can use either XMPP or Matrix, from any client you prefer, on pretty much any platform under the sun!

### Unofficial Communities

[Trilium Rocks](https://discord.gg/aqdX9mXX4r)

## 🎁 Features

* Notes can be arranged into arbitrarily deep tree. Single note can be placed into multiple places in the tree (see [cloning](https://github.com/zadam/trilium/wiki/Cloning-notes))
* Rich WYSIWYG note editing including e.g. tables, images and [math](https://github.com/zadam/trilium/wiki/Text-notes#math-support) with markdown [autoformat](https://github.com/zadam/trilium/wiki/Text-notes#autoformat)
* Support for editing [notes with source code](https://github.com/zadam/trilium/wiki/Code-notes), including syntax highlighting
* Fast and easy [navigation between notes](https://github.com/zadam/trilium/wiki/Note-navigation), full text search and [note hoisting](https://github.com/zadam/trilium/wiki/Note-hoisting)
* Seamless [note versioning](https://github.com/zadam/trilium/wiki/Note-revisions)
* Note [attributes](https://github.com/zadam/trilium/wiki/Attributes) can be used for note organization, querying and advanced [scripting](https://github.com/zadam/trilium/wiki/Scripts)
* [Synchronization](https://github.com/zadam/trilium/wiki/Synchronization) with self-hosted sync server
* Notes can be arranged into arbitrarily deep tree. Single note can be placed into multiple places in the tree (see [cloning](https://triliumnext.github.io/Docs/Wiki/Cloning-notes))
* Rich WYSIWYG note editing including e.g. tables, images and [math](https://triliumnext.github.io/Docs/Wiki/Text-notes) with markdown [autoformat](https://triliumnext.github.io/Docs/Wiki/Text-notes#autoformat)
* Support for editing [notes with source code](https://triliumnext.github.io/Docs/Wiki/Code-notes), including syntax highlighting
* Fast and easy [navigation between notes](https://triliumnext.github.io/Docs/Wiki/Note-navigation), full text search and [note hoisting](https://triliumnext.github.io/Docs/Wiki/Note-hoisting)
* Seamless [note versioning](https://triliumnext.github.io/Docs/Wiki/Note-revisions)
* Note [attributes](https://triliumnext.github.io/Docs/Wiki/Attributes) can be used for note organization, querying and advanced [scripting](https://triliumnext.github.io/Docs/Wiki/Scripts)
* [Synchronization](https://triliumnext.github.io/Docs/Wiki/Synchronization) with self-hosted sync server
* there's a [3rd party service for hosting synchronisation server](https://trilium.cc/paid-hosting)
* [Sharing](https://github.com/zadam/trilium/wiki/Sharing) (publishing) notes to public internet
* Strong [note encryption](https://github.com/zadam/trilium/wiki/Protected-notes) with per-note granularity
* [Sharing](https://triliumnext.github.io/Docs/Wiki/Sharing) (publishing) notes to public internet
* Strong [note encryption](https://triliumnext.github.io/Docs/Wiki/Protected-notes) with per-note granularity
* Sketching diagrams with built-in Excalidraw (note type "canvas")
* [Relation maps](https://github.com/zadam/trilium/wiki/Relation-map) and [link maps](https://github.com/zadam/trilium/wiki/Link-map) for visualizing notes and their relations
* [Scripting](https://github.com/zadam/trilium/wiki/Scripts) - see [Advanced showcases](https://github.com/zadam/trilium/wiki/Advanced-showcases)
* [REST API](https://github.com/zadam/trilium/wiki/ETAPI) for automation
* [Relation maps](https://triliumnext.github.io/Docs/Wiki/Relation-map) and [link maps](https://triliumnext.github.io/Docs/Wiki/Link-map) for visualizing notes and their relations
* [Scripting](https://triliumnext.github.io/Docs/Wiki/Scripts) - see [Advanced showcases](https://triliumnext.github.io/Docs/Wiki/Advanced-showcases)
* [REST API](https://triliumnext.github.io/Docs/Wiki/ETAPI) for automation
* Scales well in both usability and performance upwards of 100 000 notes
* Touch optimized [mobile frontend](https://github.com/zadam/trilium/wiki/Mobile-frontend) for smartphones and tablets
* [Night theme](https://github.com/zadam/trilium/wiki/Themes)
* [Evernote](https://github.com/zadam/trilium/wiki/Evernote-import) and [Markdown import & export](https://github.com/zadam/trilium/wiki/Markdown)
* [Web Clipper](https://github.com/zadam/trilium/wiki/Web-clipper) for easy saving of web content
* Touch optimized [mobile frontend](https://triliumnext.github.io/Docs/Wiki/Mobile-frontend) for smartphones and tablets
* [Night theme](https://triliumnext.github.io/Docs/Wiki/Themes)
* [Evernote](https://triliumnext.github.io/Docs/Wiki/Evernote-import) and [Markdown import & export](https://triliumnext.github.io/Docs/Wiki/Markdown)
* [Web Clipper](https://triliumnext.github.io/Docs/Wiki/Web-clipper) for easy saving of web content

Check out [awesome-trilium](https://github.com/Nriver/awesome-trilium) for 3rd party themes, scripts, plugins and more.
✨ Check out the following third-party resources for more TriliumNext related goodies:

- [awesome-trilium](https://github.com/Nriver/awesome-trilium) for 3rd party themes, scripts, plugins and more.
- [TriliumRocks!](https://trilium.rocks/) for tutorials, guides, and much more.

## 🏗 Builds

Trilium is provided as either desktop application (Linux and Windows) or web application hosted on your server (Linux). Mac OS desktop build is available, but it is [unsupported](https://github.com/zadam/trilium/wiki/FAQ#mac-os-support).
Trilium is provided as either desktop application (Linux and Windows) or web application hosted on your server (Linux). Mac OS desktop build is available, but it is [unsupported](https://triliumnext.github.io/Docs/Wiki/FAQ#mac-os-support).

* If you want to use Trilium on the desktop, download binary release for your platform from [latest release](https://github.com/zadam/trilium/releases/latest), unzip the package and run ```trilium``` executable.
* If you want to install Trilium on server, follow [this page](https://github.com/zadam/trilium/wiki/Server-installation).
* Currently only recent Chrome and Firefox are supported (tested) browsers.
* If you want to use TriliumNext on the desktop, download binary release for your platform from [latest release](https://github.com/TriliumNext/Notes/releases/latest), unzip the package and run ```trilium``` executable.
* If you want to install TriliumNext on your own server, follow [this page](https://triliumnext.github.io/Docs/Wiki/Server-installation).
* Currently only recent versions of Chrome and Firefox are supported (tested) browsers.

Trilium is also provided as a Flatpak:
TriliumNext will also provided as a Flatpak:

[<img width="240" src="https://flathub.org/assets/badges/flathub-badge-en.png">](https://flathub.org/apps/details/com.github.zadam.trilium)
<img width="240" src="https://flathub.org/assets/badges/flathub-badge-en.png">

## 📝 Documentation

[See wiki for complete list of documentation pages.](https://github.com/zadam/trilium/wiki/)
[See wiki for complete list of documentation pages.](https://triliumnext.github.io/Docs)

You can also read [Patterns of personal knowledge base](https://github.com/zadam/trilium/wiki/Patterns-of-personal-knowledge-base) to get some inspiration on how you might use Trilium.
You can also read [Patterns of personal knowledge base](https://triliumnext.github.io/Docs/Wiki/Patterns-of-personal-knowledge-base) to get some inspiration on how you might use Trilium.

## 💻 Contribute

Use a browser based dev environment

[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/zadam/trilium)

Or clone locally and run
Clone locally and run
```
npm install
npm run start-server
```

## 📢 Shoutouts
## 👏 Shoutouts

* [CKEditor 5](https://github.com/ckeditor/ckeditor5) - best WYSIWYG editor on the market, very interactive and listening team
* [FancyTree](https://github.com/mar10/fancytree) - very feature rich tree library without real competition. Trilium Notes would not be the same without it.
* [CodeMirror](https://github.com/codemirror/CodeMirror) - code editor with support for huge amount of languages
* [jsPlumb](https://github.com/jsplumb/jsplumb) - visual connectivity library without competition. Used in [relation maps](https://github.com/zadam/trilium/wiki/Relation-map) and [link maps](https://github.com/zadam/trilium/wiki/Link-map)
* [jsPlumb](https://github.com/jsplumb/jsplumb) - visual connectivity library without competition. Used in [relation maps](https://triliumnext.github.io/Docs/Wiki/Relation-map) and [link maps](https://triliumnext.github.io/Docs/Wiki/Link-map)

## 🤝 Support

You can support Trilium using GitHub Sponsors, [PayPal](https://paypal.me/za4am) or Bitcoin (bitcoin:bc1qv3svjn40v89mnkre5vyvs2xw6y8phaltl385d2).
You can support the original Trilium developer using GitHub Sponsors, [PayPal](https://paypal.me/za4am) or Bitcoin (bitcoin:bc1qv3svjn40v89mnkre5vyvs2xw6y8phaltl385d2).
Support for the TriliumNext organization will be possible in the near future.

## 🔑 License

Expand Down
10 changes: 10 additions & 0 deletions _check_ts_progress.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/usr/bin/env bash

cloc HEAD \
--git --md \
--include-lang=javascript,typescript \
--found=filelist.txt \
--exclude-dir=public,libraries,views,docs

grep -R \.js$ filelist.txt
rm filelist.txt
72 changes: 72 additions & 0 deletions bin/copy-dist.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
const fs = require("fs-extra");
const path = require("path");

const DEST_DIR = "./dist";
const DEST_DIR_SRC = path.join(DEST_DIR, "src");
const DEST_DIR_NODE_MODULES = path.join(DEST_DIR, "node_modules");

async function copyNodeModuleFileOrFolder(source: string) {
const adjustedSource = source.substring(13);
const destination = path.join(DEST_DIR_NODE_MODULES, adjustedSource);

console.log(`Copying ${source} to ${destination}`);
await fs.ensureDir(path.dirname(destination));
await fs.copy(source, destination);
}

const copy = async () => {
const filesToCopy = ["config-sample.ini"];
for (const file of filesToCopy) {
console.log(`Copying ${file}`);
await fs.copy(file, path.join(DEST_DIR, file));
}

const dirsToCopy = ["images", "libraries", "db"];
for (const dir of dirsToCopy) {
console.log(`Copying ${dir}`);
await fs.copy(dir, path.join(DEST_DIR, dir));
}

const srcDirsToCopy = ["./src/public", "./src/views"];
for (const dir of srcDirsToCopy) {
console.log(`Copying ${dir}`);
await fs.copy(dir, path.join(DEST_DIR_SRC, path.basename(dir)));
}

const nodeModulesFile = [
"node_modules/react/umd/react.production.min.js",
"node_modules/react/umd/react.development.js",
"node_modules/react-dom/umd/react-dom.production.min.js",
"node_modules/react-dom/umd/react-dom.development.js",
"node_modules/katex/dist/katex.min.js",
"node_modules/katex/dist/contrib/mhchem.min.js",
"node_modules/katex/dist/contrib/auto-render.min.js",
];

for (const file of nodeModulesFile) {
await copyNodeModuleFileOrFolder(file);
}

const nodeModulesFolder = [
"node_modules/@excalidraw/excalidraw/dist/",
"node_modules/katex/dist/",
"node_modules/dayjs/",
"node_modules/force-graph/dist/",
"node_modules/boxicons/css/",
"node_modules/boxicons/fonts/",
"node_modules/mermaid/dist/",
"node_modules/jquery/dist/",
"node_modules/jquery-hotkeys/",
"node_modules/print-this/",
"node_modules/split.js/dist/",
"node_modules/panzoom/dist/",
];

for (const folder of nodeModulesFolder) {
await copyNodeModuleFileOrFolder(folder);
}
};

copy()
.then(() => console.log("Copying complete!"))
.catch((err) => console.error("Error during copy:", err));
2 changes: 1 addition & 1 deletion bin/create-anonymization-script.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env node

const anonymizationService = require('../src/services/anonymization.js');
const anonymizationService = require('../src/services/anonymization');
const fs = require('fs');
const path = require('path');

Expand Down
4 changes: 2 additions & 2 deletions bin/release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ jq '.version = "'$VERSION'"' package.json|sponge package.json

git add package.json

echo 'module.exports = { buildDate:"'`date --iso-8601=seconds`'", buildRevision: "'`git log -1 --format="%H"`'" };' > src/services/build.js
echo 'export = { buildDate:"'`date --iso-8601=seconds`'", buildRevision: "'`git log -1 --format="%H"`'" };' > src/services/build.ts

git add src/services/build.js
git add src/services/build.ts

TAG=v$VERSION

Expand Down
4 changes: 2 additions & 2 deletions db/migrations/0216__move_content_into_blobs.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module.exports = () => {
const sql = require('../../src/services/sql.js');
const utils = require('../../src/services/utils.js');
const sql = require('../../src/services/sql');
const utils = require('../../src/services/utils');

const existingBlobIds = new Set();

Expand Down
12 changes: 6 additions & 6 deletions db/migrations/0220__migrate_images_to_attachments.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
module.exports = () => {
const beccaLoader = require('../../src/becca/becca_loader.js');
const becca = require('../../src/becca/becca.js');
const cls = require('../../src/services/cls.js');
const log = require('../../src/services/log.js');
const sql = require('../../src/services/sql.js');
const beccaLoader = require('../../src/becca/becca_loader');
const becca = require('../../src/becca/becca');
const cls = require('../../src/services/cls');
const log = require('../../src/services/log');
const sql = require('../../src/services/sql');

cls.init(() => {
// emergency disabling of image compression since it appears to make problems in migration to 0.61
Expand All @@ -13,7 +13,7 @@ module.exports = () => {

for (const note of Object.values(becca.notes)) {
try {
const attachment = note.convertToParentAttachment({autoConversion: true});
const attachment = note.convertToParentAttachment({ autoConversion: true });

if (attachment) {
log.info(`Auto-converted note '${note.noteId}' into attachment '${attachment.attachmentId}'.`);
Expand Down
6 changes: 3 additions & 3 deletions docker_healthcheck.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const http = require("http");
const ini = require("ini");
const fs = require("fs");
const dataDir = require('./src/services/data_dir.js');
const dataDir = require('./src/services/data_dir');
const config = ini.parse(fs.readFileSync(dataDir.CONFIG_INI_PATH, 'utf-8'));

if (config.Network.https) {
Expand All @@ -10,8 +10,8 @@ if (config.Network.https) {
process.exit(0);
}

const port = require('./src/services/port.js');
const host = require('./src/services/host.js');
const port = require('./src/services/port');
const host = require('./src/services/host');

const options = { timeout: 2000 };

Expand Down
2 changes: 1 addition & 1 deletion dump-db/inc/data_key.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const crypto = require("crypto");
const sql = require('./sql.js');
const sql = require('./sql');
const decryptService = require('./decrypt.js');

function getDataKey(password) {
Expand Down
6 changes: 3 additions & 3 deletions dump-db/inc/dump.js
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ function dumpDocument(documentPath, targetPath, options) {
return;
}

let {content} = sql.getRow("SELECT content FROM blobs WHERE blobId = ?", [noteRow.blobId]);
let { content } = sql.getRow("SELECT content FROM blobs WHERE blobId = ?", [noteRow.blobId]);

if (content !== null && noteRow.isProtected && dataKey) {
content = decryptService.decrypt(dataKey, content);
Expand Down Expand Up @@ -108,7 +108,7 @@ function dumpDocument(documentPath, targetPath, options) {
}

try {
fs.mkdirSync(childTargetPath, {recursive: true});
fs.mkdirSync(childTargetPath, { recursive: true });
}
catch (e) {
console.error(`DUMPERROR: Creating directory ${childTargetPath} failed with error '${e.message}'`);
Expand Down Expand Up @@ -157,7 +157,7 @@ function validatePaths(documentPath, targetPath) {
}

if (!fs.existsSync(targetPath)) {
const ret = fs.mkdirSync(targetPath, {recursive: true});
const ret = fs.mkdirSync(targetPath, { recursive: true });

if (!ret) {
console.error(`Target path '${targetPath}' could not be created. Run with --help to see usage.`);
Expand Down
Loading
Loading