A service layer to add additional functionality to the Code and Coffee website.
The Code and Coffee website (https://codeandcoffee.org/) is built using squarespace. This service allows us to construct custom web components that can be used to add more complicated elements to the website than what would otherwise be possible using Squarespace.
You need NodeJS installed locally to run this project. You can download it from https://nodejs.org/en/download/.
When installed, run the following script to install.
npm install
To run the project, run the following script.
npm run serve
./src/lambda
This is where the source code for the lambda functions is stored. Lambda functions are used for all the backend logic. Keep in mind that there is a cache that is used to store the results of the lambda functions. This cache is used to reduce the number of calls to the lambda functions.
./src/web
This is where the source code for the web components is stored.
./public
This is where the public resources are stored. All files aren served as is.
NodeJS - Used to run javascript in the backend to retreive data for the website.
Typescript - Adds typing to the code to make it easier to read and maintain.
Vite - Used to bundle the web component code to make it efficient to consume.
Rollup - Used to by Vite to bundle the web component code and used to bundle the lambda code to make it easier to consume.
prettier - Used to organize the code to make it easier to read and maintain.
ESLint - Used to enforce code standards to make it easier to read and maintain.
Jest - Used to run unit tests to make sure the code is working as expected (on the odd occasion we write tests).
React - Used to build the web components. Makes it easier to build interactive and reactive components.
Amazon Web Services (AWS) - Used to host the service.