Design-Docs

This commit is contained in:
Jöran Malek 2024-02-03 11:27:15 +01:00
parent 42c65bc54c
commit 5619093f41
8 changed files with 89 additions and 0 deletions

5
refs/design/Hierarchy.md Normal file
View file

@ -0,0 +1,5 @@
# Hierarchy
Notes can be attached to notes creating a hierachy.
The note id doesn't change based on attached parent.

10
refs/design/Icons.md Normal file
View file

@ -0,0 +1,10 @@
# Icons
Assign Note some kind of Icon.
This could be
- Emoji
- Rasterized Image
- Font Icon
Adding custom Icons.

8
refs/design/Media.md Normal file
View file

@ -0,0 +1,8 @@
# Media
## Research
- Access to byte-Stream on Db (w/o allocating byte[])
https://redirect.github.com/dotnet/efcore/issues/6234#issuecomment-1153855426
- Write to stream directly?
https://learn.microsoft.com/dotnet/standard/data/sqlite/blob-io

15
refs/design/Notes.md Normal file
View file

@ -0,0 +1,15 @@
# Notes
Notes are plain-text content, written in MarkDown.
Metadata is supported in FrontMatter.
## Versions
Note content is put verbatim in the data store.
The client is responsible for building a patch that can be
applied to the latest version of a note.
The serving instance is able to produce a patch from any
revision to the latest revision, in order for a client to
sync up to the current state.

3
refs/design/Printing.md Normal file
View file

@ -0,0 +1,3 @@
# Printing
Export to HTML/PDF.

32
refs/design/Templates.md Normal file
View file

@ -0,0 +1,32 @@
# Templates
Templates are copied to a note, making them completely editable.
*Consideration*: Inherit a Template, this will make only `{{Variable}}`-formatted content blocks editable. <- Predefined Form
## Metadata
````
---
Template: Yes
---
# {{Title}}
Content
````
## Built-In
**Book** - Form
Editable Text Content with default-content
````
---
Template: Form
---
# {{Book Name}}
{{Content multiline}}
:::query format=list
note.parents include this
:::
````

11
refs/design/UI-Desktop.md Normal file
View file

@ -0,0 +1,11 @@
# UI Desktop
## Local-Mode
Uses same data backend as Sync (Sqlite)
## Online-Mode
Performs OpenAPI calls to Sync server.
*Consideration*: Allow for syncing to local backend.
## Research

View file

@ -0,0 +1,5 @@
# Workspaces
On Web/Api/Sync Users can create Workspaces.
Workspaces separate different "notebooks".