stitch
Note taking for messy minimalists
git clone git://mccd.space/stitch| Log | Files | Refs | README | LICENSE | Mail |
README (4941B)
1 Table of Contents
2 _________________
3
4 1. Stitch - Note Managing for Messy Minimalists
5 .. 1. FEATURES
6 .. 2. SCREENSHOTS
7 .. 3. CREDIT
8 .. 4. USAGE
9 .. 5. INSTALLATION
10 .. 6. DEVELOPMENT & BUILDING
11 .. 7. ROADMAP
12 2. COMMUNITY & CONTRIBUTING
13 3. KNOWN ISSUES
14 4. AUTHOR
15
16
17 1 Stitch - Note Managing for Messy Minimalists
18 ==============================================
19
20 "...Differing from Newton and Schopenhauer, your ancestor did not
21 think of time as absolute and uniform. He believed in an infinite
22 series of times, in a dizzily growing, ever spreading network of
23 diverging, converging and parallel times. This web of time - the
24 strands of which approach one another, bifurcate, intersect or ignore
25 each other through the centuries - embraces every possibility. We
26 do not exist in most of them. In some you exist and not I, while in
27 others I do, and you do not, and in yet others both of us exist."
28 - Garden of Forking Paths, Borges
29
30 Stitch is a minimal grep-based CLI note-managing system targeting those that
31 want to easily capture notes and not spend time organizing them. Use tags
32 to capture notes and then stitch them together. Build your own knowledge
33 base, journal, todo manager and more.
34
35 Stitch is unopiniated; use whatever editor and file format you want. It
36 only requires that each file contains only one heading.
37
38 Stitch is a note-manager that tag teams seamlessly with your preferred
39 text editor. The manpages provide examples to get you started.
40
41 1.1 FEATURES
42 ~~~~~~~~~~~~
43
44 - Read your notes in multiple different ways
45 - Comes with four views: full, headlines, todo, done
46 - Compatible with any file format: markdown, ruby markup, org etc.
47 - Run shell commands on notes using sed, grep etc.
48 - Write notes in any editor: vim, kakoune... or even ed!
49 - Available as a single static binary
50 - No need for an external DB, it only uses files
51 - Unix-y & fast
52
53
54 1.2 SCREENSHOTS
55 ~~~~~~~~~~~~~~~
56
57 - Notes Overview + Search
58 https://blobs.mccd.space/stitch/notes-view.png
59 - TODO View
60 https://blobs.mccd.space/stitch/todo-view.png
61 - Done View (+ Example of a command)
62 https://blobs.mccd.space/stitch/done-view-commands.png
63 - Full-Notes View
64 https://blobs.mccd.space/stitch/full-notes-view.png
65
66
67 1.3 CREDIT
68 ~~~~~~~~~~
69
70 Stitch is based on the note composing system Howm for Emacs.
71
72
73 1.4 USAGE
74 ~~~~~~~~~
75
76 Run `stitch --help' or `man stitch' to get started
77
78
79 1.5 INSTALLATION
80 ~~~~~~~~~~~~~~~~
81
82 You can find all static releases tagged under
83 https://git.mccd.space/pub/stitch/refs/
84
85 Download the binary, chmod +x the binary and put in PATH.
86
87 Obs, the download link next to the tag is for the snapshot, you will have
88 to open the link of the tag to find the download to the binary.
89
90 For stitch to work, you will need to set the environment variable
91 STITCH_DIRECTORY, which should be an absolute path to where you want to
92 store your notes, for stitch to work.
93
94 Stitch depends on GNU Grep or Ugrep.
95
96
97 1.6 DEVELOPMENT & BUILDING
98 ~~~~~~~~~~~~~~~~~~~~~~~~~~
99
100 To set up the project for local development, the easiest way is to
101 install Nix, direnv and enable nix flakes. Then to compile:
102
103 dune build
104
105 Optimized build with
106
107 dune build --profile release
108
109 And to run
110
111 dune exec -- stitch
112
113 To generate man pages, run
114
115 dune exec -- stitch --help=groff
116
117 You can find the generated binary under
118 _build/default/bin/main.exe. Ignore the .exe, it's not a windows
119 binary.
120
121 When the system is built with Nix, it will be dynamically linked.
122
123 To build a static release, There is a Dockerfile included that
124 compiles it with musl, use it with podman:
125
126 podman pull docker.io/alpine:edge
127 podman build . -t stitch:latest
128 mkdir release
129 podman run -v ./release:/tmp/build/_build:U stitch:latest
130
131 Binary will be found in ./release/install/default/bin/stitch and
132 manpages in ./release/install/default/man/man1/stitch.1
133
134
135 1.7 ROADMAP
136 ~~~~~~~~~~~
137
138 - Support sort
139 - Support tagging commands
140 - Support custom hotkeys
141 - Prettier rendering
142 - Better result narrowing
143
144
145 2 COMMUNITY & CONTRIBUTING
146 ==========================
147
148 Patches, discussions, bug reports etc. can be sent to
149 ~marcc/stitch-general@lists.sr.ht.
150
151 Feel free to share your setup, tips, and tricks etc.
152
153 Archives can be found at
154 https://lists.sr.ht/~marcc/stitch-general
155
156 Never used git with email? You can learn how-to here:
157 https://git-send-email.io/
158
159
160 3 KNOWN ISSUES
161 ==============
162
163 - ugrep doesn't correctly handle ordering, meaning that if you sort by
164 modified date, it doesn't behave correctly. Because of this I am
165 waiting with a sort functionality until I have come up wiht a decent
166 implementation.
167
168 - File names cannot contain :[0-9]:, since it's used to determine
169 where the file starts and ends with grep.
170
171
172 4 AUTHOR
173 ========
174
175 Marc Coquand (<https://mccd.space>)