Skip to content
/ cdk-template Public template
forked from swarmion/template

An opinionated Serverless monorepo microservices architecture

License

Notifications You must be signed in to change notification settings

aleios-cloud/cdk-template

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swarmion example

All Contributors

This template is an example of a project generated with Swarmion.

Generate a new project with Swarmion

yarn create swarmion-app

Then head to the Swarmion documentation on swarmion.dev

Features

  • Nx
  • Eslint configuration
  • Prettier configuration
  • Vitest configuration
  • Typescript
  • Common packages built with babel, with a watch mode
  • Selective tests, package and deploy to remove the need to run all the tests and deploy at every commit.

Code principles

This repository follows the code principles:

  • Your codebase should adapt to your team organizations
  • DRY (Don't Repeat Yourself)
  • Don't deploy all at once
  • Safe deployments

In order to respect these guidelines, a good solution is the Monorepo approach.

Tips:

  • Always explicitly declare dependencies between end services in package.json
  • These dependencies can be of two kinds:
    • code dependencies: service B declares service A as a dependency because it needs some code exported by service A;
    • deploy dependencies: service B declares service A as a dependency because it needs service A to be deployed before it.

Commands

These commands have to be run at the root of the project.

  • nvm use: set the version of node set in .nvmrc
  • yarn: install node dependencies in all packages;
  • yarn package: compile the common packages;
  • yarn test: launch the tests in all packages;
  • yarn deploy: deploy all the end services in order;

Contributors ✨

Thanks goes to these wonderful people (emoji key):


François Farge

🚇 💻 🤔 📖

Adrien Cacciaguerra

💻 🤔 🚇

Louis Pinsard

💻

guillaumeduboc

💻

Maxime Vivier

💻

Guillaume Lagrange

💻

Pierre Milliotte

💻

Thomas Aribart

📖

Charles Géry

💻

Stan Hannebelle

💻

Quentin Hello

🚇

Paul Molin

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

About

An opinionated Serverless monorepo microservices architecture

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 68.8%
  • JavaScript 26.8%
  • Shell 3.4%
  • HTML 1.0%