mirror of
https://github.com/wassname/talk.git
synced 2026-07-03 23:51:11 +08:00
59cf728681
* feat: initial support for synced tenants * fix: cleanup * fix: logger now respects logging level * fix: cache now ignores updates issued from itself * feat: print subscriber count * feat: initial moderation + validation for new comments * fix: added Promiseable type * feat: initial actions impl * feat: more moderation phases * fix: handle settings inheritence * fix: moved settings into new file * fix: defaults and documentation * fix: replace merge with object spread * feat: added integration with akismet * fix: support tenant cache for oidc strategy * fix: fixed compile * fix: import ordering * feat: added bull for queue support * feat: support for scraping * fix: fixes for scraper - Implemented simple metascraper replacement (to resolve security advisory warning) - Implemented simle dotize replacement (to resolve not working version that couldn't handle date objects) - Plugged in asset scraping to asset creation process * fix: handles array values * feat: added initial scraper implementation * feat: seperate queues but share config * fix: simplified auth data access * feat: moved more settings into the graph * feat: improved mailer design * fix: fixed issue with dotize * fix: fixed some issues with adapter * fix: queue cleanup * feat: added organizationName to Tenant * feat: email rendering * review: support es6 imports * fix: restore old ci step * fix: adjusted logging messages
70 lines
1.4 KiB
Markdown
70 lines
1.4 KiB
Markdown
# Design
|
|
|
|
## HTTP Routes
|
|
|
|
### Stream API
|
|
|
|
/api/tenant/graphql
|
|
/api/tenant/auth
|
|
|
|
### Tenant Management API
|
|
|
|
/api/management/graphql
|
|
/api/management/auth
|
|
|
|
## Folder structure
|
|
|
|
```text
|
|
/graph/tenant <-- tenant's api (comments, assets, ...)
|
|
/graph/management <-- tenant management api
|
|
```
|
|
|
|
1. No tenants
|
|
2. Create a tenant <-- consuming the TMA
|
|
|
|
## Database connections
|
|
|
|
### Redis Clients
|
|
|
|
1. Tenant RedisPubSub Subscriber *
|
|
2. Tenant RedisPubSub Publisher
|
|
3. Queue Subscriber *
|
|
4. Queue Publisher
|
|
5. Queue Client
|
|
6. Queue Blocking Client
|
|
|
|
## Scripts
|
|
|
|
### Embed
|
|
|
|
Embed Script - Renders the iFrame <-- does not have a html page in production (should be on server?)
|
|
|
|
/dist/static/assets/embed.js /static/embed.js
|
|
|
|
### Stream
|
|
|
|
Stream - Renders the comment stream <-- data
|
|
|
|
/dist/static/assets/stream.<HASH>.css /static/assets/stream.<HASH>.css
|
|
/dist/static/assets/stream.<HASH>.js /static/assets/stream.<HASH>.js
|
|
/dist/static/stream.html /embed/stream
|
|
|
|
### Admin
|
|
|
|
Admin - Renders the Admin page <-- data
|
|
|
|
/dist/static/assets/admin.<HASH>.css /static/assets/admin.<HASH>.css
|
|
/dist/static/assets/admin.<HASH>.js /static/assets/admin.<HASH>.js
|
|
/dist/static/admin.html /admin
|
|
|
|
## Development Routes
|
|
|
|
localhost:3000
|
|
/ -> /admin
|
|
/dev <-- server side html for dev/iframe integration
|
|
|
|
localhost:8080
|
|
/ -> localhost:3000/dev
|
|
/embed/stream <-- stream html (now is at /)
|
|
/admin <-- stream html (now is not there)
|