|
4 | 4 |
|
5 | 5 | | Endpoint | Guard | Details | Frontend`*` | Backend`*` | Notes | |
6 | 6 | |---|---|---|---|---|---| |
7 | | -| login | X | [Link](#login) | | | | |
| 7 | +| login | | [Link](#login) | | | | |
8 | 8 | | logout | X | [Link](#logout) | | | | |
9 | 9 | | decks | X | [Link](#decks) | POST PUT | POST PUT | Meta and guard still TODO | |
10 | 10 | | slides | X | [Link](#slides) | POST PUT DELETE | POST | Furthermore than guard and missing routes, content should be saved outside the db | |
11 | | -| publish | X | | | | | |
12 | | -| feed | | | | | | |
| 11 | +| tags | X | [Link](#tags) | | | | |
| 12 | +| content | X | [Link](#content) | | | Images upload and save | |
| 13 | +| publish | X | [Link](#publish) | | | | |
| 14 | +| feed | | [Link](#feed) | | | | |
13 | 15 |
|
14 | 16 | `*`: already implemented in |
15 | 17 |
|
| 18 | +## Others TODO |
| 19 | + |
| 20 | +- replace CORS wildcard with proper `Access-Control-Allow-Origin` |
| 21 | + |
16 | 22 | ### Login |
17 | 23 |
|
18 | 24 | | <!-- --> | <!-- --> | |
@@ -82,12 +88,18 @@ export interface User { |
82 | 88 | * Sample |
83 | 89 |
|
84 | 90 | ``` |
| 91 | +export interface MetaTag { |
| 92 | + string; |
| 93 | +} |
| 94 | +
|
85 | 95 | export interface Meta { |
86 | 96 | meta_id?: string; |
87 | 97 | |
88 | 98 | description?: string; |
89 | 99 | author?: string; |
90 | 100 | |
| 101 | + tags: MetaTag[]; |
| 102 | + |
91 | 103 | image_url?: string; |
92 | 104 | |
93 | 105 | created_at: Date; |
@@ -153,3 +165,53 @@ Notes: |
153 | 165 |
|
154 | 166 | - basically the corresponding DeckDeckGo core Web Components are all `<deckgo-slide-xxxxxx/>` and their content |
155 | 167 | - `SlideTemplate` and `SlideAttributes` will be extended in the future |
| 168 | + |
| 169 | +### Tags |
| 170 | + |
| 171 | +| <!-- --> | <!-- --> | |
| 172 | +|-------------|-------------| |
| 173 | +| Title | Tags | |
| 174 | +| Description | Return a list of matching meta tags in regards of the searchterm | |
| 175 | +| URL | /feed | |
| 176 | +| Method | GET | |
| 177 | +| Body | searchTerm | |
| 178 | + |
| 179 | +Notes: |
| 180 | + |
| 181 | +- filter and search case not sensitive and stuffs |
| 182 | +- the goal is to have only on time if possible for example "javascript" in the database |
| 183 | + |
| 184 | +### Content |
| 185 | + |
| 186 | +| <!-- --> | <!-- --> | |
| 187 | +|-------------|-------------| |
| 188 | +| Title | Content | |
| 189 | +| Description | To upload content to th s3, like images, we will need signedUrl. These will have to be generated from the backend. | |
| 190 | +| URL | /content | |
| 191 | +| Method | POST | |
| 192 | +| Body | fileName??? | |
| 193 | + |
| 194 | +### Publish |
| 195 | + |
| 196 | +| <!-- --> | <!-- --> | |
| 197 | +|-------------|-------------| |
| 198 | +| Title | Publish | |
| 199 | +| Description | Publish presentation should build the PWA presentation and unleash it on the web | |
| 200 | +| URL | /publish | |
| 201 | +| Method | POST | |
| 202 | +| Body | deck_id (?) | |
| 203 | + |
| 204 | +### Feed |
| 205 | + |
| 206 | +| <!-- --> | <!-- --> | |
| 207 | +|-------------|-------------| |
| 208 | +| Title | Feed | |
| 209 | +| Description | The feed returns decks and meta | |
| 210 | +| URL | /feed | |
| 211 | +| Method | GET | |
| 212 | +| Body | ??? | |
| 213 | + |
| 214 | +Notes: |
| 215 | + |
| 216 | +- At some point the feed will be optimized and specific pro users regarding his/her interested |
| 217 | +- Need pagination. The feed should for example be fetched for 10 presentations and then 100 pro 100 |
0 commit comments