With these changes, dependency management is no longer an issue, we can from now on, create as many packages as needed inside ./packages (looking forward to @dzcode.io/ui @Souhaib-Benbouzid ), and use them across the mono-repo.
[x] Added 3 new packages as a starter inside ./packages:
[x] @dzcode.io/models: contains our entities and models.
[x] @dzcode.io/utils: contains miscellaneous code that doesn't belong to a specific domain but is used in many places.
[x] @dzcode.io/tooling: a dev package, storing repo config files, and has all the common npm dependencies, so requiring this package will automatically give you access to tsc, eslint, prettier and more.
[x] Decommissioned ./common folder, and spread its code across @dzcode.io/utils, @dzcode.io/api and @dzcode.io/data.
[x] Cleaned dependencies of @dzcode.io/api, @dzcode.io/web, @dzcode.io/data and @dzcode.io/mobile using @dzcode.io/tooling, and moved all repo setup to the latter.
[x] Fully included ./mobile to the monorepo by enabling back hoisting, thanks to expo 43.
[x] Simplified the Github Action CI/CD workflows to 4 ones:
[x] cd.deploy.stg.yml deploy everything to stage
[x] cd.deploy.yml deploy everything to production
[x] ci.main.yml run checks and upload coverage for main branch
[x] ci.pr.yml run checks for PR
[x] Bunch of tweaks and patches here and there as I went through the code.
Description
With these changes, dependency management is no longer an issue, we can from now on, create as many packages as needed inside
./packages
(looking forward to@dzcode.io/ui
@Souhaib-Benbouzid ), and use them across the mono-repo.[x] Setup lerna.
[x] Added 3 new packages as a starter inside
./packages
:@dzcode.io/models
: contains our entities and models.@dzcode.io/utils
: contains miscellaneous code that doesn't belong to a specific domain but is used in many places.@dzcode.io/tooling
: a dev package, storing repo config files, and has all the common npm dependencies, so requiring this package will automatically give you access totsc
,eslint
,prettier
and more.[x] Decommissioned
./common
folder, and spread its code across@dzcode.io/utils
,@dzcode.io/api
and@dzcode.io/data
.[x] Cleaned dependencies of
@dzcode.io/api
,@dzcode.io/web
,@dzcode.io/data
and@dzcode.io/mobile
using@dzcode.io/tooling
, and moved all repo setup to the latter.[x] Fully included
./mobile
to the monorepo by enabling backhoisting
, thanks to expo 43.[x] Simplified the Github Action CI/CD workflows to 4 ones:
cd.deploy.stg.yml
deploy everything to stagecd.deploy.yml
deploy everything to productionci.main.yml
run checks and upload coverage formain
branchci.pr.yml
run checks for PR[x] Bunch of tweaks and patches here and there as I went through the code.
Type of change
Refactoring