Skip to content

Serverless microservices, micro frontends, a cross platform flutter native app and everything else that makes up the clockup platform.

License

Notifications You must be signed in to change notification settings

michael-codesjs/clockup

Repository files navigation

NOTICE

I've paused working on this project for the time being. I'll be back hopefully not a long time from now (20/02/2023).

clockup

Welcome, this repository contains everything that makes up the clockup platform. The backend comprised of several serverless microservices, web clients comprised of several micro front-ends and a cross platform native app. This project is very experimental and far from done.

Dependencies & Installation

Install dependecies of Node/Typescript components by running yarn install in the component directory(this includes the root directory).

Our infrastructure is defined and deployed to AWS using HashiCorp's Terraform. To install the Terraform CLI, follow these instructions.

Deploying & Destroying

You should have an AWS Account and your credentials set on your local machine. I like to do so via the shared credentials file, you can do so too by following these instructions. These credentials are used by Terraform and The Serverless Framework to deploy the infrastructure and microservices to your AWS account.

To deploy and destroy the infrastructure and/or microservices, run the commands yarn deploy and yarn destroy respectively and let the scripts I wrote handle the long process of deploying/destroying the backend for you. The scripts will ask you a few questions before deploying. Note: these scripts require you to install dependencies of every microservice.

Testing

To run tests, you'll first have to:

  • Set the AWS_REGION enviroment variable to whatever region you deployed the infrastructure and services to. For example: export AWS_REGION=eu-central-1.
  • Generate enviroment variables. You can do so by running yarn generate-env.

Refer to the package.json files for specific tests.

Meta

Michael Phiri – @michael_wcjs[email protected]

Contributing

  1. Fork it (https://github.com/michael-codesjs/clockup-backend/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

Some useful resources that will help understand the codebase.

About

Serverless microservices, micro frontends, a cross platform flutter native app and everything else that makes up the clockup platform.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published