Julio Biason
2 years ago
1 changed files with 57 additions and 1 deletions
@ -1,3 +1,59 @@ |
|||||||
# Memoirs |
# Memoirs |
||||||
|
|
||||||
A digital life memoir of your life |
A digital life memoir of your life |
||||||
|
|
||||||
|
## Design |
||||||
|
|
||||||
|
The main design is to have a Store application, which manages its storage. Then other services are used to capture data from services and throw to Store, or retrieve information for Store to be displayed. |
||||||
|
|
||||||
|
Currently, I'm considering the following Captures (based on my own life): |
||||||
|
|
||||||
|
- [ ] Mastodon |
||||||
|
- [ ] RSS |
||||||
|
- [ ] Guild Wars 2 |
||||||
|
- [ ] Steam Capturer (?) |
||||||
|
- [ ] Netflix |
||||||
|
- [ ] Deezer |
||||||
|
- [ ] Calendar/CalDav |
||||||
|
|
||||||
|
### Store |
||||||
|
|
||||||
|
The main application that keeps information. We would probably need a design like: |
||||||
|
|
||||||
|
- id: UUID of the record |
||||||
|
- title: String, produced by a Capturer |
||||||
|
- content: Text, produced by a Capturer, must always be Markdown (to avoid having a format that needs to be specially processed by some viewer) |
||||||
|
- source: Name of the Capturer |
||||||
|
- meta: HashMap, with some information the Capturer has about the entry |
||||||
|
|
||||||
|
### Mastodon Capturer |
||||||
|
|
||||||
|
There are two options for a Mastodon Capturer: A pure RSS reader or a full-fledged Mastodon client. A client would probably capture things send in private and such, which seem better. |
||||||
|
|
||||||
|
Need to store, locally: |
||||||
|
|
||||||
|
- id: Toot ID |
||||||
|
|
||||||
|
We need only the ID 'cause we don't want to duplicate content; once the client finds a toot in its own database, it stops reading from the source and don't send it to the Store. |
||||||
|
|
||||||
|
As content send to the Store, we'd use a template like |
||||||
|
|
||||||
|
``` |
||||||
|
{% if content_warning %} |
||||||
|
({{ content_warning}}) |
||||||
|
{% endif %} |
||||||
|
|
||||||
|
{{ content }} |
||||||
|
``` |
||||||
|
|
||||||
|
### RSS Capturer |
||||||
|
|
||||||
|
### Guild Wars 2 Capturer |
||||||
|
|
||||||
|
### Steam Capturer |
||||||
|
|
||||||
|
### Netflix Capturer |
||||||
|
|
||||||
|
### Deezer Capturer |
||||||
|
|
||||||
|
### Calendar/CalDav Capturer |
Loading…
Reference in new issue