packages
packages copied to clipboard
Monorepo for stuff that I use frequently: Design System, Gitmoji, Lint Config, Notion, Semantic Release, etc.
@jeromefitz/packages
Monorepo (via π¦ pnpm and πΊ turbo) for tools I use frequently in various projects, people, and companies I work with.
- π¦οΈ Packages
- π·οΈ CI/CD Overview
- :octocat: CI/CD Workflows
π¦οΈ Packages
π§ Configuration
Originally was all-in-one as @jeromefitz/codestyle, these have been broken out for separate maintainability and ala-carte implementation.
Spoiler: They are opinionated, but can be overriden, extended, or ignored. π
πΌοΈ Design System
Built with radix-ui and stitches. A tree-shakeable design system that you can use as much of, or as little of, as you would like.
@jeromefitz/design-system- π Major props to the
@radix-uiteam as this is π½οΈ of sorts. - π
Storybookis included but not all the way there. May - π Code Example:
@jeromefitz/websites - ποΈ Live Example:
jeromefitzgerald.com
- π Major props to the
β‘ Release Management Tools
ccommit- conventional commit generator that interprets commit types from
gitmojithroughconventional-commits
- conventional commit generator that interprets commit types from
@jeromefitz/conventional-gitmoji- Map
gitmojitoconventional-commitsfeat => β¨οΈfix => ποΈci => π·οΈfix-ci => ποΈ...
- Allows you to keep
semverconsistent by expanding both - You most likely do not need to use this, unless you are using this for your separate tooling. This is more of a configuration stop-gap for ...
- Map
@jeromefitz/semantic- Automatic Semantic Versioning through
semantic-releasewith support forgitmoji.
- Automatic Semantic Versioning through
@jeromefitz/release-notes-generator- You guessed it, a custom release-notes-generator.
- π See the latest output at the releases page.
π² Misc
@jeromefitz/notion- ποΈ API (hyper-customized
@notionhq/client) forNotion - ποΈ Live Example:
jeromefitzgerald.com
- ποΈ API (hyper-customized
- :octocat:
@jeromefitz/scripts- :octocat: scripts that are used to set up repos and for CI/CD
@jeromefitz/spotify- π§βπ€οΈ API to gather data on:
now-playing|top-artists|top-tracks
- πΌοΈ Plus imagery customizations via plaiceholder
- ποΈ Live Example:
jeromefitzgerald.com/music
- π§βπ€οΈ API to gather data on:
- π§°οΈ
@jeromefitz/utils- Scripts that are generically re-used throughout
π Coming Soon(ish)
next-notion- Next.js implementation for
@jeromefitz/notion
- Next.js implementation for
π Bonus
@jeromefitz/dotfiles: Separate from this repository- zsh + homebrew computer setup
πͺ¦ Deprecated
@jeromefitz/git-cz- cli prompt for (expanded) conventional commits and conventional branches as no one needs to remember all the different types
- π Formats your commit message for you
- π²οΈ Integrate with your Issue Tracking System
- π’ Customize which commit types get which semver
- cli prompt for (expanded) conventional commits and conventional branches as no one needs to remember all the different types
π·οΈ CI/CD Overview
- π¦
pnpm workspaces - :octocat:
GitHub Actionsfor CI/CD- Plus release management through npm
- πΊοΈ
turbofor monorepo management- [x] cache: local / remote & team development
- [x] cache: github actions
- π·οΈ
tsupfor typescript builds (w/ some config) - π€οΈ
Renovatefor Patch + Minor Package Management - π€οΈ
Kodiakto βAutomate (our) GitHub Pull Requestsβ - π€οΈ Automatic
Semantic Versioningw/Conventional Commits- ποΈ Commits & Versioning (Release Notes) made more fun by a few of the packages in this repo
:octocat: CI/CD Workflows
- βοΈ
**pull**:- Branch(es):
main|canary|develop
- Script(s):
lint|test|build
- Branch(es):
- ποΈ
**push**:- Branch(es):
main|canary|develop(ci|feature|fix|refactor|release)/**
- Script(s):
lint|test|build|semantic-release
- Note(s):
[b]necessary forsemantic-release- Pre-relase branches (aka
!main):- Handled in root
release.config - Can be overriden in any package
- Handled in root
- Pre-relase branches (aka
[b]necessary forbuildwhen not onmain
- Branch(es):
- ποΈ
**weekly**:- Branch(es):
main
- Script(s):
lint|test|build|semantic-release
- Note(s):
[b]not necessary forsemantic-release
- Branch(es):
π₯³ Contributing
If you would like to opt-out of the git hooks please look at .env.example.
Normally, these would be opt-in and may change to that in the future.