Skip to content

Monorepo for stuff that I use frequently: Design System, Gitmoji, Lint Config, Notion, Semantic Release, etc.

License

Notifications You must be signed in to change notification settings

JeromeFitz/packages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@jeromefitz/packages

Monorepo (via 📦 pnpm and 🔺 turbo) for tools I use frequently in various projects, people, and companies I work with.

📦️ 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.

⚡ Release Management Tools

🎲 Misc

🔜 Coming Soon(ish)

  • next-notion
    • Next.js implementation for @jeromefitz/notion

🎁 Bonus

🪦 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

👷️ CI/CD Overview

  • 📦 pnpm workspaces
  • :octocat: GitHub Actions for CI/CD
    • Plus release management through npm
  • 🔺️ turbo for monorepo management
    • cache: local / remote & team development
    • cache: github actions
  • 👷️ tsup for typescript builds (w/ some config)
  • 🤖️ Renovate for Patch + Minor Package Management
  • 🤖️ Kodiak to “Automate (our) GitHub Pull Requests’
  • 🤖️ Automatic Semantic Versioning w/ 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
  • 🔀️ **push**:
    • Branch(es):
      • main|canary|develop
      • (ci|feature|fix|refactor|release)/**
    • Script(s):
      • lint|test|build|semantic-release
    • Note(s):
      • [b] necessary for semantic-release
        • Pre-relase branches (aka !main):
          • Handled in root release.config
          • Can be overriden in any package
      • [b] necessary for build when not on main
  • 🌃️ **weekly**:
    • Branch(es):
      • main
    • Script(s):
      • lint|test|build|semantic-release
    • Note(s):
      • [b] not necessary for semantic-release

🥳 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.