Skip to content

bfra-me/works

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bfra.me Works

Build Status TypeScript License pnpm

A comprehensive toolkit for modern JavaScript and TypeScript development, providing shared configurations, development tools, and utilities for building consistent, high-quality projects.

bfra.me Works is a monorepo containing battle-tested packages that streamline development with opinionated configurations. From ESLint and Prettier setups to a powerful project creation CLI with AI assistance, this toolkit enables teams to maintain professional-grade projects with minimal configuration overhead.

Key Philosophy: All packages work independently but are designed to complement each other for a cohesive development experience focused on consistency, quality, and developer productivity.

Features

  • AI-Powered Project Creation - Intelligent scaffolding with @bfra.me/create CLI
  • Shared Configurations - Consistent ESLint, Prettier, and TypeScript setups
  • Monorepo Ready - Optimized for pnpm workspaces and monorepo development
  • Type-Safe by Default - Strict TypeScript configurations with comprehensive coverage
  • Automated Releases - Semantic versioning and publishing with changesets
  • Testing Framework - Vitest-based testing with coverage reporting
  • Modern Tooling - Built for ES modules, Node.js 20+, and latest standards

Quick Start

Create a New Project

# Use the CLI to scaffold a new project
npx @bfra.me/create my-project

# With specific template and options
npx @bfra.me/create my-library --template library --no-git

Add to Existing Project

# Install shared ESLint configuration
npm install --save-dev @bfra.me/eslint-config

# Add to your eslint.config.js
import { defineConfig } from '@bfra.me/eslint-config'

export default defineConfig({
  typescript: true,
  prettier: true
})

Packages

Package Description Version
@bfra.me/create AI-powered CLI for creating projects from templates npm
@bfra.me/eslint-config Shared ESLint configuration with TypeScript and Prettier support npm
@bfra.me/prettier-config Opinionated Prettier configuration with multiple variants npm
@bfra.me/tsconfig Strict TypeScript configurations for libraries and applications npm
@bfra.me/semantic-release Automated versioning and release configuration npm
@bfra.me/badge-config TypeScript API for generating shields.io badge URLs npm

Usage Examples

TypeScript Project Setup

# 1. Create project with AI assistance
npx @bfra.me/create my-app --template typescript

# 2. Or configure existing project
npm install --save-dev @bfra.me/eslint-config @bfra.me/prettier-config @bfra.me/tsconfig

Configuration Files

tsconfig.json:

{
  "extends": "@bfra.me/tsconfig",
  "include": ["src"],
  "exclude": ["dist", "node_modules"]
}

package.json:

{
  "prettier": "@bfra.me/prettier-config",
  "scripts": {
    "build": "tsc",
    "lint": "eslint src --fix",
    "format": "prettier --write src"
  }
}

Monorepo Configuration

# Create monorepo structure
npx @bfra.me/create my-monorepo --template monorepo

# Add packages to existing monorepo
npx @bfra.me/create packages/ui --template library
npx @bfra.me/create packages/api --template node

Root Configuration

package.json:

{
  "workspaces": ["packages/*"],
  "scripts": {
    "build": "pnpm -r run build",
    "test": "pnpm -r run test",
    "lint": "pnpm -r run lint"
  }
}

Badge Generation

import { buildStatus, coverage, version } from '@bfra.me/badge-config/generators'

// Generate status badges
const buildBadge = buildStatus('passing')
// => https://img.shields.io/badge/build-passing-green

const coverageBadge = coverage(85)
// => https://img.shields.io/badge/coverage-85%25-yellow

const versionBadge = version('1.2.3')
// => https://img.shields.io/badge/version-1.2.3-blue

Development

Note

This project requires Node.js 20+ and pnpm for optimal performance.

Setup

# Clone the repository
git clone https://github.com/bfra-me/works.git
cd works

# Install dependencies (use bootstrap, not install)
pnpm bootstrap

# Build all packages
pnpm build

Development Workflow

# Start development mode (watches all packages)
pnpm dev

# Run tests across all packages
pnpm test

# Lint and fix code
pnpm lint --fix

# Full validation pipeline
pnpm validate

Quality Assurance

# Type checking
pnpm type-check

# Type coverage reporting
pnpm type-coverage

# Package validation
pnpm lint-packages

# Integration testing
pnpm test

Documentation

Why bfra.me Works?

For Individual Developers:

  • Skip tedious configuration setup
  • Get consistent, professional-grade tooling
  • Focus on building features, not fighting tools
  • Learn modern development best practices

For Teams:

  • Standardize development workflows across projects
  • Reduce onboarding time for new team members
  • Maintain code quality with minimal effort
  • Enable faster feature delivery with proven patterns

For Organizations:

  • Consistent architecture patterns across teams
  • Reduced maintenance overhead for tooling
  • Built-in best practices for scalability and performance
  • Battle-tested configurations used in production

Built with ❤️ by Marcus R. Brown

Packages

No packages published

Contributors 5

Languages