tiro-notes 0.27.56 → 0.27.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +191 -28
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Tiro Notes
|
|
2
2
|
|
|
3
|
-
Open-source, fast and
|
|
3
|
+
Open-source, fast and extensible markdown editor to use everywhere
|
|
4
4
|
|
|
5
|
-

|
|
6
6
|
|
|
7
7
|
## WHY
|
|
8
8
|
|
|
@@ -18,10 +18,49 @@ Tiro Notes focus points are :
|
|
|
18
18
|
- 💅 **Nice**: Usability & nice user experience is key aspect of Tiro.
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
-
|
|
22
|
-
- 🏋 **Extensible** : custom and
|
|
21
|
+
- ☁️ / 🖥️ / 💻 / 📱 **Use it anywhere** : Apps for Windows, Mac, Linux. You can install and start Tiro within seconds with npx. You can install it on Android and iOS. You can use it as web server and use it with any device with a browser.
|
|
22
|
+
- 🏋 **Extensible** : create custom markdown tag like [[calendar]], [[uml]] and other within seconds. Use [[latex]]. Create your own tag with [[script]] and the client api
|
|
23
|
+
|
|
24
|
+
## MENU
|
|
25
|
+
* [Why](#why)
|
|
26
|
+
* [Usage](#usage)
|
|
27
|
+
+ [Desktop Applications](#desktop-applications)
|
|
28
|
+
+ [Command Line](#command-line)
|
|
29
|
+
* [Functionalities List](#functionalities-list)
|
|
30
|
+
* [Documentation](#documentation)
|
|
31
|
+
+ [Available Custom Tags](#available-custom-tags)
|
|
32
|
+
+ [Add scripts in your note](#add-scripts-in-your-note)
|
|
33
|
+
+ [Create your own custom tags](#create-your-own-custom-tags)
|
|
34
|
+
- [1) How to create a new custom tag [[mail-address]]](#1--how-to-create-a-new-custom-tag--)
|
|
35
|
+
- [2) Using {{InnerTag}}](#2--using---innertag--)
|
|
36
|
+
- [3) Add script logic in your tag](#3--add-script-logic-in-your-tag--)
|
|
37
|
+
+ [Client API](#client-api)
|
|
38
|
+
* [Faq](#faq)
|
|
39
|
+
+ [How can I sync my notes folder on other devices?](#how-can-i-sync-my-notes-folder-on-other-devices)
|
|
40
|
+
+ [Can I edit my notes on another application?](#can-i-edit-my-notes-on-another-application)
|
|
41
|
+
+ [How can I access to Tiro on my device](#how-can-i-access-to-tiro-on-my-device)
|
|
42
|
+
+ [What is the current status of Tiro Notes?](#what-is-the-current-status-of-tiro-notes)
|
|
23
43
|
|
|
24
|
-
##
|
|
44
|
+
## USAGE
|
|
45
|
+
|
|
46
|
+
### DESKTOP APPLICATIONS
|
|
47
|
+
|
|
48
|
+
Mac/Linux/Windows Applications can be downloaded [here](https://github.com/dotgreg/tiro-notes/releases/tag/production)
|
|
49
|
+
|
|
50
|
+
### COMMAND LINE
|
|
51
|
+
- Requirements : [NodeJs](https://nodejs.org/en/download/) and [RipGrep](https://github.com/BurntSushi/ripgrep)
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
npx tiro-notes
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
<img src="https://user-images.githubusercontent.com/2981891/159723396-b5e81dcd-a4aa-4581-9b7f-e3b62bcdef65.gif" width="600"/>
|
|
58
|
+
|
|
59
|
+
- This works with any platform/device, including unrooted Android with [Termux](https://termux.com) and possibly iOS with iSH (untested)
|
|
60
|
+
- ```npx tiro-notes --help``` for all available options
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
## FUNCTIONALITIES LIST
|
|
25
64
|
<details>
|
|
26
65
|
<summary>Expand all functionalities</summary>
|
|
27
66
|
|
|
@@ -36,8 +75,8 @@ Tiro Notes focus points are :
|
|
|
36
75
|
- 🏋 Embed videos and other web content (with iframe)
|
|
37
76
|
- 🏋 create javascript applications within your note with [[script]]
|
|
38
77
|
- 💱 display math formulas with [[latex]]
|
|
78
|
+
- 🧬 display UML and other diagrams with [[diagram]] (custom tags)
|
|
39
79
|
- (🔧) 💬 Text to Speech (beta)
|
|
40
|
-
- (🔧) 🧬 display UML and other diagrams with [[diagram]] (planned...)
|
|
41
80
|
- (🔧) 📡 Server Collaborative edition (planned...)
|
|
42
81
|
|
|
43
82
|
**Search**
|
|
@@ -65,39 +104,167 @@ Tiro Notes focus points are :
|
|
|
65
104
|
- (🔧)📱 Install on iOS with iSH and NPX (to be tested...)
|
|
66
105
|
</details>
|
|
67
106
|
|
|
68
|
-
## USAGE
|
|
69
107
|
|
|
70
|
-
|
|
108
|
+
## DOCUMENTATION
|
|
71
109
|
|
|
72
|
-
|
|
110
|
+
### Available Custom Tags
|
|
111
|
+
- [[calendar]] a fully functional calendar that stored data on a note : [install instructions & screenshot](https://github.com/dotgreg/tiro-notes/blob/master/documentation/custom-tag-calendar.md)
|
|
112
|
+
- [[mermaid]] Uml, Gantt and flowcharts : [install instructions & screenshot](https://github.com/dotgreg/tiro-notes/blob/master/documentation/custom-tag-mermaid.md)
|
|
73
113
|
|
|
74
|
-
###
|
|
75
|
-
- Requirements : [NodeJs](https://nodejs.org/en/download/) and [RipGrep](https://github.com/BurntSushi/ripgrep)
|
|
114
|
+
### Add scripts in your note
|
|
76
115
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
116
|
+
<details>
|
|
117
|
+
<summary>Expand for details</summary>
|
|
118
|
+
You can add javascript logic in your note with the special tag [[script]]
|
|
119
|
+
|
|
120
|
+
You need to use ```return``` to output it in the preview.
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
.... Note content ....
|
|
124
|
+
|
|
125
|
+
[[script]]]
|
|
126
|
+
const stringToDisplay = `this is a hello world from javascript`
|
|
127
|
+
const randomNumber = Math.round(Math.random() * 1000)
|
|
128
|
+
return `${stringToDisplay} ${randomNumber} `
|
|
129
|
+
[[script]]
|
|
130
|
+
|
|
131
|
+
.... Note content ....
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
will output something like
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
.... Note content ....
|
|
138
|
+
|
|
139
|
+
this is a hello world from javascript 102
|
|
140
|
+
|
|
141
|
+
.... Note content ....
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
</details>
|
|
80
145
|
|
|
81
|
-
|
|
146
|
+
### Create your own custom tags
|
|
82
147
|
|
|
83
|
-
|
|
84
|
-
|
|
148
|
+
<details>
|
|
149
|
+
<summary>Expand for details</summary>
|
|
150
|
+
|
|
151
|
+
#### 1) How to create a new custom tag [[mail-address]]
|
|
152
|
+
In order to install a new tag, you need to create a new note in ```/.tiro/tags/``` folder. (create the /tags directory if doesn't exists).
|
|
153
|
+
|
|
154
|
+
The content of that note will then be placed instead of the tag.
|
|
155
|
+
|
|
156
|
+
So in order to create a custom tag [[mail-address]], you will need to create ```/.tiro/tags/mail-address.md```
|
|
157
|
+
|
|
158
|
+
So with ```/.tiro/tags/mail-address.md``` content being :
|
|
159
|
+
```
|
|
160
|
+
10 Downing Street
|
|
161
|
+
City of Westminster
|
|
162
|
+
London, SW1
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
And your note content being
|
|
166
|
+
|
|
167
|
+
```
|
|
168
|
+
.... Note content ....
|
|
169
|
+
|
|
170
|
+
[[mail-address]] [[mail-address]]
|
|
171
|
+
|
|
172
|
+
.... Note content ....
|
|
173
|
+
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
The result will give
|
|
177
|
+
|
|
178
|
+
```
|
|
179
|
+
.... Note content ....
|
|
180
|
+
|
|
181
|
+
10 Downing Street
|
|
182
|
+
City of Westminster
|
|
183
|
+
London, SW1
|
|
184
|
+
|
|
185
|
+
.... Note content ....
|
|
186
|
+
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
#### 2) Using {{InnerTag}}
|
|
191
|
+
The content inside the custom tags can be fetched with the special tag ```{{innerTag}}```
|
|
192
|
+
|
|
193
|
+
So with ```/.tiro/tags/mail-address.md``` content being :
|
|
194
|
+
```
|
|
195
|
+
10 Downing Street
|
|
196
|
+
City of Westminster
|
|
197
|
+
London, SW1
|
|
198
|
+
{{innerTag}}
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
Calling ```[[mail-address]] John Foo [[mail-address]]``` in any note will be replaced by
|
|
202
|
+
|
|
203
|
+
```
|
|
204
|
+
10 Downing Street
|
|
205
|
+
City of Westminster
|
|
206
|
+
London, SW1
|
|
207
|
+
John Foo
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### 3) Add script logic in your tag
|
|
211
|
+
|
|
212
|
+
You can add javascript to your custom tag with the special tag [[script]]
|
|
213
|
+
|
|
214
|
+
If we have ```/.tiro/tags/square-number.md``` with the following content :
|
|
215
|
+
```
|
|
216
|
+
The multiplied result is :
|
|
217
|
+
[[script]]]
|
|
218
|
+
const numberToSquare = {{innerTag}}
|
|
219
|
+
return `${numberToSquare * numberToSquare}`
|
|
220
|
+
[[script]]
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
Using ```[[square-number]] 4 [[square-number]]``` will return ```The multiplied result is : 16```
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
</details>
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
### Client API (Beta)
|
|
230
|
+
<details>
|
|
231
|
+
<summary>Expand for details</summary>
|
|
232
|
+
|
|
233
|
+
|
|
234
|
+
Tiro Notes provides a Client API accessible using the developer console of your browser :
|
|
235
|
+

|
|
236
|
+
|
|
237
|
+
typing ``` window.tiroCli ``` will give you the updated list of available functions. Each function has a description ```window.tiroCli.FUNCTION.description``` and can be called like that ```window.tiroCli.FUNCTION.f()```
|
|
238
|
+
|
|
239
|
+
The Tiro Cli allows you to :
|
|
240
|
+
- fetch a note content : ```window.tiroCli.clientApiGetFileContent```
|
|
241
|
+
- modify a note content : ```window.tiroCli.clientApiSetFileContent```
|
|
242
|
+
- Load an external javascript file : ```window.tiroCli.loadScripts(['https://', 'https://', ...], function () => {})```
|
|
243
|
+
- Show the current note content : ```window.tiroCli.fileContent```
|
|
244
|
+
- Trigger a search in the interface : ```window.tiroCli.triggerSearch```
|
|
245
|
+
- Set the Dual Editor view type temporarily : ```window.tiroCli.setTempViewType ("both", "editor", "preview")```
|
|
246
|
+
|
|
247
|
+
/!\ this API and CLI structure is meant to change in term of structure, make sure to check window.tiroCli when upgrading to a new version /!\
|
|
248
|
+
|
|
249
|
+
</details>
|
|
85
250
|
|
|
86
251
|
|
|
87
|
-
# FAQ
|
|
88
252
|
|
|
89
|
-
##
|
|
253
|
+
## FAQ
|
|
254
|
+
|
|
255
|
+
### How can I sync my notes folder on other devices?
|
|
90
256
|
You can use any sync solution like dropbox, google drive, resilio sync, syncthings etc...
|
|
91
257
|
|
|
92
|
-
|
|
258
|
+
### Can I edit my notes on another application?
|
|
93
259
|
Yes, all the datas Tiro uses is coming from markdown notes. So you can edit your notes in other applications without any problem.
|
|
94
260
|
|
|
95
|
-
|
|
96
|
-
1) Device where tiro is installed : http://localhost:3023
|
|
97
|
-
2) If on same local network: http://192.168.xx.xx:3023 where that ip is the ip of the device where tiro is installed
|
|
261
|
+
### How can I access to Tiro on my device from anywhere
|
|
262
|
+
1) Device where tiro is installed : http://localhost:3023
|
|
263
|
+
2) If on same Wifi/local network: http://192.168.xx.xx:3023 where that ip is the ip of the device where tiro is installed
|
|
98
264
|
3) Not on same network : Tiro works great using SSH tunneling, AutoSSH or similar (free ssh tunnels solutions exists like https://opentunnel.net/). Npx tiro-notes also includes a --tunnel option for easy tunneling.
|
|
265
|
+
4) On the cloud: You can install Tiro Notes on your server and access it from anywhere.
|
|
99
266
|
|
|
100
|
-
|
|
267
|
+
### What is the current status of Tiro Notes?
|
|
101
268
|
I have been developing it for over a year and using it as my daily note app for over 6 months now, its core functionalities seems stable enough for my use so far.
|
|
102
269
|
I haven't been loosing any data so far, and there is always the history note functionality in that case.
|
|
103
270
|
|
|
@@ -106,7 +273,3 @@ However, I consider that application still in alpha phase, it still needs a lot
|
|
|
106
273
|
So use it at your own risk, and always with data you can afford to lose.
|
|
107
274
|
|
|
108
275
|
I am not responsible of any data loss!
|
|
109
|
-
|
|
110
|
-
# ADVANCED
|
|
111
|
-
## Applications within Tiro with [[script]] and window.tiroCli
|
|
112
|
-
- Add a calendar app within Tiro : [instructions](https://gist.github.com/dotgreg/cb758ff85be8f9afb9c7854be494c945#comments)
|