Packages

screenshot of Packages
radix-ui
notion

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

Overview

The @jeromefitz/packagesMonorepo is a comprehensive collection of tools geared towards facilitating various tasks across projects, organizations, and workflows. It embraces modern development practices, offering a range of customizable and opinionated packages designed to enhance productivity. With its separation of functionalities into distinct packages, users can implement only what they need, creating a tailored development environment that fits their requirements.

The setup leverages technologies like pnpm for package management and turbo for efficient monorepo handling. This approach not only streamlines development processes but also ensures that developers can maintain a high level of flexibility and control over their codebases while adhering to best practices.

Features

  • Modular Packages: The monorepo consists of separated tools such as ESLint configurations, Prettier settings, and TypeScript configurations that are customizable and independently maintainable.

  • Opinionated Yet Flexible: These packages are designed with best practices in mind but allow for extensions and overrides, enabling developers to adjust configurations to their liking.

  • Tree-Shakeable Design System: Built using radix-ui and stitches, this design system allows for selective implementation, ensuring that developers use only the components they require, thereby optimizing the application size.

  • Automated Versioning: Tools like @jeromefitz/semantic enable automatic semantic versioning with support for gitmoji, ensuring consistent version management across projects.

  • Release Notes Generator: The custom release-notes generator simplifies the process of generating release documentation, helping teams keep track of changes and updates effectively.

  • CI/CD Integration: The use of GitHub Actions for CI/CD workflows combined with tools like tsup for TypeScript builds significantly enhances the efficiency of development and deployment processes.

  • Comprehensive Scripts: A collection of scripts included in the repository aids in setting up repositories, managing CI/CD workflows, and performing generic tasks across multiple projects.

radix-ui
Radix UI

Radix Primitives is a low-level UI component library with a focus on accessibility, customization and developer experience. You can use these components either as the base layer of your design system, or adopt them incrementally.

notion
Notion

Notion is an all-in-one workspace that helps individuals and teams organize and manage their projects, notes, documents, and databases. It offers a range of features, including note-taking, task management, project planning, team collaboration, and more, all within a single app.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

turborepo
Turborepo

Turbo is an incremental bundler and build system optimized for JavaScript and TypeScript, written in Rust.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.