🚧 Added architecture doc and some links
This commit is contained in:
33
docs/architecture.md
Normal file
33
docs/architecture.md
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 4
|
||||||
|
id: architecture
|
||||||
|
title: Technical Architecture
|
||||||
|
---
|
||||||
|
|
||||||
|
### High-level Architecture
|
||||||
|
|
||||||
|
`ThreeTwo!`, the app is built upon the microservice architecture. The UI is a standalone `node.js` app and the rest of the logic is broken into microservices.
|
||||||
|
|
||||||
|
The microservices deal with:
|
||||||
|
|
||||||
|
1. Library functions (model orchestration, CRUD ops on comics, metadata)
|
||||||
|
2. Comic Vine (scraping issues, volumes and more)
|
||||||
|
3. Grand Comics Database (scraping, aggregations and more)
|
||||||
|
4. Helpers (image transformation, file-system ops, compression/uncompression)
|
||||||
|
|
||||||
|
### Technical stack
|
||||||
|
|
||||||
|
`ThreeTwo!` is written in `TypeScript` from UI to the services layer.
|
||||||
|
|
||||||
|
The technologies used are:
|
||||||
|
|
||||||
|
1. React
|
||||||
|
2. Redux
|
||||||
|
3. moleculer
|
||||||
|
4. RabbitMQ
|
||||||
|
5. socket.io
|
||||||
|
6. node.js
|
||||||
|
7. Express
|
||||||
|
8. MongoDB
|
||||||
|
9. mongoose
|
||||||
|
|
||||||
@@ -53,7 +53,7 @@ const config = {
|
|||||||
type: 'doc',
|
type: 'doc',
|
||||||
docId: 'intro',
|
docId: 'intro',
|
||||||
position: 'left',
|
position: 'left',
|
||||||
label: 'Tutorial',
|
label: 'Quick Start',
|
||||||
},
|
},
|
||||||
{to: '/blog', label: 'Blog', position: 'left'},
|
{to: '/blog', label: 'Blog', position: 'left'},
|
||||||
{
|
{
|
||||||
@@ -79,16 +79,12 @@ const config = {
|
|||||||
title: 'Community',
|
title: 'Community',
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
label: 'Stack Overflow',
|
label: 'Github',
|
||||||
href: 'https://stackoverflow.com/questions/tagged/docusaurus',
|
href: 'https://github.com/rishighan/threetwo',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Discord',
|
label: 'Discord',
|
||||||
href: 'https://discordapp.com/invite/docusaurus',
|
href: 'https://discord.gg/DbpcSNuM',
|
||||||
},
|
|
||||||
{
|
|
||||||
label: 'Twitter',
|
|
||||||
href: 'https://twitter.com/docusaurus',
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@@ -100,13 +96,13 @@ const config = {
|
|||||||
to: '/blog',
|
to: '/blog',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'GitHub',
|
label: 'Rishi Ghan',
|
||||||
href: 'https://github.com/facebook/docusaurus',
|
href: 'https://rishighan.com',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
copyright: `Copyright © ${new Date().getFullYear()} My Project, Inc. Built with Docusaurus.`,
|
copyright: `Copyright © ${new Date().getFullYear()} Quasar Software, LLC. Built with Docusaurus.`,
|
||||||
},
|
},
|
||||||
prism: {
|
prism: {
|
||||||
theme: lightCodeTheme,
|
theme: lightCodeTheme,
|
||||||
|
|||||||
Reference in New Issue
Block a user