This page permanently redirects to gemini://d.moonfire.us/blog/2021/02/05/mfgames-writing-upkeep/.

MfGames Writing Upkeep

=> Up a Level

As usual between major projects, I try to spend a little time working on maintenance and upkeep of the multitude of projects that I've written or contributed too. It is somewhat random, but I had a task to move two of my Node packages, @mfgames-writing/ncx[1] and @mfgames-writing/opf[2] into the mfgames-writing monorepo[3] when I had done the rest of the projects.

=> 1: https://www.npmjs.com/package/@mfgames-writing/ncx | 2: https://www.npmjs.com/package/@mfgames-writing/opf | 3: https://gitlab.com/mfgames-writing/mfgames-writing-js

The decision to convert to a single repository for a multiple of projects took me quite a while. Mostly it came from the problem I have with package-based arrangements, the “rail car”. When I have to make a change to a library but that change has to be propagated through a number of packages until the one that needed the change. It looks like a chain and it's tedious when I'm doing rapid sets of changes trying to figure something out.

Now, I could just do everything in a single monolithic project, basically have a mfgames-writing package that does everything, but I still follow the Unix Philosophy: Do One Thing Well. The individual packages handle EPUB, PDF, and HTML generation. It feels “wrong” to force all of them to be combined together.

In the end, I want separate packages but I dislike the process of working with them. With Node packages, I found Lerna[4] which handles a lot of that forwarding, plus plays well with semantic-release[5] and conventional commits[6]. I've been happy, but it was a learning process and I missed two packages.

=> 4: https://lerna.js.org/ | 5: https://semantic-release.gitbook.io/semantic-release/ | 6: https://www.conventionalcommits.org/

I also reformatting the code and switched testing over to Jest. It bumped up a few versions, but that always seem to happen when I'm learning things.

While that cleans up most of the packages, there are a few others related packages I still need to convert, namely the Docker image[7] and the Yoman generator[8]. Those are completely different than the core packages, so they shouldn't be in the monorepo in my opinion.

=> 7: https://hub.docker.com/r/dmoonfire/mfgames-writing-js/ | 8: https://www.npmjs.com/package/generator-mfgames-writing

But those can wait until next around.

Metadata

Categories:

=> Programming

Tags:

=> Docker | MfGames Writing | Yoman

Footer

Below are various useful links within this site and to related sites (not all have been converted over to Gemini).

=> Now | Contact | Biography | Bibliography | Support

=> Fiction | Fedran | Coding | The Moonfires

=> Categories | Tags

=> Privacy | Colophon | License

=> Mailing List

=> https://d.moonfire.us/blog/2021/02/05/mfgames-writing-upkeep/

Proxy Information
Original URL
gemini://d.moonfire.us/blog/2021/02/05/mfgames-writing-upkeep
Status Code
Success (20)
Meta
text/gemini;lang=en-US
Capsule Response Time
819.279984 milliseconds
Gemini-to-HTML Time
3.834606 milliseconds

This content has been proxied by September (3851b).