Skip to content

Commit e98fa9d

Browse files
committedJan 17, 2022
docs: add documentation to README.md
1 parent 70b03f8 commit e98fa9d

File tree

2 files changed

+129
-32
lines changed

2 files changed

+129
-32
lines changed
 

‎README.md

+63-32
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,63 @@
1-
# Pensieve
2-
3-
## Next
4-
- [] Sketchpad?
5-
- Right click => Create note from selection
6-
7-
## Sync
8-
- make queue
9-
- add all notes sorted by modified date
10-
- those notes should be fetched
11-
- max 1 per second?
12-
- slow down will proportional to last modified date
13-
- find function name que hace así: __/‾‾
14-
- when listing notes
15-
- detect all notes with changed `modified` date
16-
- add them to queue
17-
- when reading notes
18-
- remove them from queue
19-
20-
### how
21-
- https://github.com/amatiasq/better-gists/blob/6c5a79cc3908592ed6a53461d48205177d6504f3/src/4-storage/middleware/MixedStore.ts#L17-L38
22-
- needs to go to Store
23-
- or emit an event captured by Store
24-
- put them first
25-
26-
## Nice to have
27-
- Rename group
28-
- Push note to top
29-
- Light theme
30-
- Link {{other notes}}
31-
- Share as gist
32-
- Design settings page
1+
# [Pensieve](https://pensieve.amatiasq.com)
2+
3+
Notes saved in your private Github repository.
4+
5+
## Features
6+
7+
- [Configurable](https://pensieve.amatiasq.com/settings) for settings and shortcuts (`CMD+,`)
8+
- Installable from Chrome. This is required for some shortcuts to work.
9+
- Works offline for notes opened in the past
10+
11+
### Organisation
12+
13+
- First line of the file is the filename
14+
- Folders are created by adding slash (`/`) to the filename
15+
- Change syntax highlighting by adding extension to the filename
16+
- Sorted by creation date
17+
- Star notes you want always at the top
18+
19+
### Writing
20+
21+
- Markdown enabled by default
22+
- Autosave after 5 seconds of inactivity
23+
- History of changes visible in Github as commits
24+
- Same text editor as VS Code (Monaco editor) which includes
25+
- Automatic identation
26+
- Syntax highlighting
27+
- Multiple cursors
28+
- Typescript validation
29+
- Convert regex matches into links. Default settings converts [user/repo] into a Github link
30+
- Custom highlighting with regex. Default settings show ~~strikethrough~~ and @user in different colors
31+
32+
## Caveats
33+
34+
- When switching devices notes list is not updated, refresh the page to see
35+
- Opening a note takes a few seconds in mobile for unknown reason
36+
37+
## Changelog
38+
39+
### 1.1 Custom highlighting
40+
41+
Pensieve 1.1 release has been successful with new features like
42+
43+
- [custom/links]
44+
- custom highlighting as ~~strikethrough~~ or @username
45+
- all based on RegExp and documented by example in Settings [CMD+,]
46+
47+
After a year of usage Pensieve has generated
48+
49+
- 6500 commis
50+
- 16mb of data of which
51+
- one third is actual notes content
52+
- another third is metadata
53+
- and the remaining third is git files
54+
55+
```sh
56+
~/pensieve-data main > du -sh . .* *
57+
16M .
58+
5.2M .git
59+
4.8M meta
60+
5.5M note
61+
4.0K settings.json
62+
4.0K shortcuts.json
63+
```

‎docs/notes.md

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Bugs
2+
3+
## Empty commits
4+
5+
- Git history is full of empty commits
6+
- Github API to prevent empty commits?
7+
8+
## Search returns unexpected results
9+
10+
- Type "Pensieve" in search field
11+
- First results are OK
12+
- Then you get mostly every note
13+
- Then you get the right ones
14+
- Quite random
15+
16+
# Next
17+
18+
- Right click => Create note from selection
19+
- On new file: text should be already selected
20+
- ~~Mobile tap on markdown preview to cover 100÷ height~~
21+
- Javascript register protocol handler
22+
- Web Share Target API
23+
24+
## Nice to have
25+
26+
- Rename group
27+
- Push note to top
28+
- Light theme
29+
- Link {{other notes}}
30+
- Share as gist
31+
- Design settings page
32+
33+
## Sync
34+
35+
This will make all notes available offline
36+
37+
- make queue
38+
- add all notes sorted by modified date
39+
- those notes should be fetched
40+
- max 1 per second?
41+
- slow down will proportional to last modified date
42+
- find function name que hace así: `__/‾‾`
43+
- FOUND: https://youtu.be/mr5xkf6zSzk
44+
- when listing notes
45+
- detect all notes with changed `modified` date
46+
- add them to queue
47+
- when reading notes
48+
- remove them from queue
49+
50+
### how
51+
52+
- https://github.com/amatiasq/pensieve/blob/6c5a79cc3908592ed6a53461d48205177d6504f3/src/4-storage/middleware/MixedStore.ts#L17-L38
53+
- needs to go to Store
54+
- or emit an event captured by Store
55+
- put them first
56+
57+
# Done
58+
59+
- ~~Cypress tests~~
60+
61+
## Markdown (monaco)
62+
63+
- `~~strikethrough~~`
64+
- "quotes show javascript-string-rules"
65+
- show `@mentions` dark blue
66+
- @google twitter username regex

0 commit comments

Comments
 (0)
Please sign in to comment.