Skip to content
This repository was archived by the owner on Nov 9, 2024. It is now read-only.

Commit f18d169

Browse files
authored
Update DESIGN-v1.md
1 parent 331c3df commit f18d169

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

DESIGN-v1.md

+11-11
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,20 @@
99
Lodestone is made up of a handful of components, each isolated to its own Docker container.
1010
At runtime each component is started by docker-compose, and glued together into a single application via a [reverse proxy](https://github.com/AnalogJ/lodestone/issues/31).
1111

12-
- **ElasticSearch cluster** - acts as data storage for all document content.
12+
- :ballot_box_with_check: **ElasticSearch cluster** - acts as data storage for all document content.
1313
- **Collector - Filesystem Watcher** - filesystem watcher that continuously watches directories for new files to process
1414
- **Collector - Email Watcher** - email watcher that continuously watches an inbox for new emails
15-
- **Storage** - S3 compatible blob storage api that can be used to serve files (and thumbnails) via the UI
15+
- :ballot_box_with_check: **Storage** - S3 compatible blob storage api that can be used to serve files (and thumbnails) via the UI
1616
- **Queue** - used to coordinate and schedule Collectors
17-
- **Web** - Static frontend for user to interact with
18-
- **API** - extendable API layer used by Web component. Used to control all other components
19-
- **Reverse Proxy** - Front door for application
17+
- :ballot_box_with_check: **Web** - Static frontend for user to interact with
18+
- :ballot_box_with_check: **API** - extendable API layer used by Web component. Used to control all other components
19+
- :ballot_box_with_check: **Reverse Proxy** - Front door for application
2020

2121
## API
2222

2323
We have a couple of different options for our API design, `Unified`, `Direct/Component` or `Framework` API
2424

25-
### Unified
25+
### :ballot_box_with_check: Unified
2626

2727
- We can create a comprehensive API that wraps all the functionality of our components (storage/collectors/elasticsearch),
2828
providing a unified API that we can then iterate on
@@ -35,8 +35,8 @@ providing a unified API that we can then iterate on
3535

3636
- Other components that do not have an API (but need to be available via HTTP) can be accessed via top level paths
3737

38-
- `/web`
39-
- `/storage`
38+
- :ballot_box_with_check: `/web`
39+
- :ballot_box_with_check: `/storage`
4040

4141
- Any components that do not support a path prefix will need to have a API translation endpoint.
4242

@@ -59,7 +59,7 @@ https://github.com/nodefony/nodefony
5959
https://moleculer.services
6060

6161

62-
## Storage
62+
## :ballot_box_with_check: Storage
6363

6464
Lodestone pledges to keep your files safe and leave them untouched. However file storage needs to take into account
6565
multiple file types and sources:
@@ -73,7 +73,7 @@ In addition, the files need to be accessible via the Web UI, so they need to be
7373
This can be done a couple of different ways:
7474

7575
1. Nginx container serving static content
76-
2. Minio container with an S3 compatible API + content server.
76+
2. :ballot_box_with_check: Minio container with an S3 compatible API + content server.
7777

7878
Minio supports [WORM (Write-Once-Read-Multiple)](https://docs.min.io/docs/minio-server-configuration-guide.html#Worm) which
7979
means that we can ensure that files written by the UI/Email are not modified.
@@ -109,7 +109,7 @@ However this would require the docker filesystem mount is `read-write` not `read
109109
- https://github.com/paulmillr/chokidar
110110

111111

112-
## Web
112+
## :ballot_box_with_check: Web
113113
- https://github.com/elastic/search-ui
114114
- https://swiftype.com/search-ui
115115

0 commit comments

Comments
 (0)