The main goal of this project is to design and develop a social network application inspired on Twitter and Reddit.
This application is written using the Loose Coupling architechture pattern (also called system design).
Each component of the application (user service, post service) will have its own models, routes and business logic related files in a single directory.
Reusable logic, such as database connection is exposed at the root level of the project module tree.
.
├── server.ts
├── database.ts
├── service-name-1\
| ├──index.ts
| ├──routes.ts
| └── models.ts
├── service-name-2\
| ├──index.ts
| ├──routes.ts
| └── models.ts
The database is served through Docker. To run the database execute the
scripts/docker-run
script.
./scripts/docker-run
This script will create a volume for the database (cupboard-api-volume),
and then will attempt to build the Dockefile
in the root directory of
the project.
Finally will execute this image exposing it in the localhost on port 5432.
Contributions of any kind are welcome and would be awesome, ideas, bug fixes, reports, feedback and improvements are always welcome!
Licensed under the MIT License.