Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: converting from monolith to monorepo, starting package decomposition #535

Open
wants to merge 3 commits into
base: dev
Choose a base branch
from

Conversation

emagnier
Copy link
Collaborator

@emagnier emagnier commented Apr 27, 2024

It's been a while since we're talking about monorepos, so let's do it!

This PR is really just a first step. There's still quite a bit of work to modularize things further, but let's save that for future PRs.

Basically, in step 1, the romcal library is converted into a package within the monorepo @romcal/rite-roman1969. Later on, we can continue to refactor certain elements into different packages (for future PRs). I've already made a first one: @romcal/easter (which contains the code to calculate the date of Easter).

I think the key here is to stabilize the current configuration. I've continued to use npm to set up this monorepo. I'm more used to using pnpm than npm in monorepo projects, so I'd appreciate some help fine-tuning the configs and package.json with npm (for now, it's pretty basic).

Here's the start of the new structure:

packages/
    config/     # contains configuration files for current and future packages, defined once in this package
    easter/     # a first package, as an example
rites/
    roman1962/   # a new package, currently empty, waiting for future contributors ;-)
    roman1969/   # the 'romcal' library, moved here

For now, everything remains functional in the same way, using the npm package romcal (to avoid breaking changes).

If you'd like to contribute to this PR as well, feel free to do so 😉

@emagnier emagnier force-pushed the monorepo-refactor branch 2 times, most recently from 3249ca1 to b9c162b Compare May 5, 2024 13:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant