ivanblindyuk / kindapoetry

This is kinda poetry website
0 stars 0 forks source link

High-level architecture #6

Open ivanblindyuk opened 3 years ago

ivanblindyuk commented 3 years ago

We have to define which architecture we are going to follow during the website implementation:

ivanblindyuk commented 3 years ago

Database server We are going to use NoSQL.

Motivation: it seems like the website will operate extra simple data with no complex relations. It does not make much sense to use SQL storage then. The only domain for SQL usage might be an authentication and authorization but we can consider to implement microservice for that part (see next).

Front-end and back-end We are going to impement standalone REST Web API and front-end which will request the API. Thus front-end will be implemented as a landing page.

Motivation: we might consider implementing of Mobile App in the future. Web API will be used as back-end for the App then.

Arhitecture We are going to implement the website as a monolithic application.

Motivation: it seems like the website will have a single context - literature. Even with implementation of features that exist on the idea level at the moment it does not make much sense to separate some parts into standalone contexts.

Exception: authentication and authorization. We suppose that a functionality of register via social medias to like and share website content could be implemented. Thus it might make sense to implement such a functionality as a microservice. But not at the initial stage of the website development.