{"id":16925422,"url":"https://github.com/bfra-me/works","last_synced_at":"2026-05-16T04:22:29.977Z","repository":{"id":37939633,"uuid":"307573591","full_name":"bfra-me/works","owner":"bfra-me","description":"@bfra-me tools and components","archived":false,"fork":false,"pushed_at":"2025-04-10T06:31:18.000Z","size":5687,"stargazers_count":2,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-10T06:33:21.802Z","etag":null,"topics":["bfra-me","components","semantic-release","tools","tsconfig","works"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bfra-me.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-27T03:21:38.000Z","updated_at":"2025-04-10T05:23:53.000Z","dependencies_parsed_at":"2024-02-25T08:26:34.882Z","dependency_job_id":"d9f358dc-18e0-4d08-8e3a-1592cad83731","html_url":"https://github.com/bfra-me/works","commit_stats":{"total_commits":925,"total_committers":6,"mean_commits":"154.16666666666666","dds":"0.18270270270270272","last_synced_commit":"429e366aa65b8ffdb64ab1ba7083482b2b382cd6"},"previous_names":[],"tags_count":181,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfra-me%2Fworks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfra-me%2Fworks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfra-me%2Fworks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bfra-me%2Fworks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bfra-me","download_url":"https://codeload.github.com/bfra-me/works/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248172746,"owners_count":21059590,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bfra-me","components","semantic-release","tools","tsconfig","works"],"created_at":"2024-10-13T20:10:36.155Z","updated_at":"2025-11-14T04:03:43.614Z","avatar_url":"https://github.com/bfra-me.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bfra.me Works\n\n[![Build Status](https://img.shields.io/github/actions/workflow/status/bfra-me/works/main.yaml?style=for-the-badge\u0026label=Build)](https://github.com/bfra-me/works/actions) [![TypeScript](https://img.shields.io/badge/TypeScript-blue?style=for-the-badge\u0026logo=typescript\u0026logoColor=white)](https://www.typescriptlang.org) [![License](https://img.shields.io/badge/License-MIT-yellow?style=for-the-badge)](license.md) [![pnpm](https://img.shields.io/badge/pnpm-workspace-orange?style=for-the-badge\u0026logo=pnpm)](https://pnpm.io)\n\n\u003e A comprehensive toolkit for modern JavaScript and TypeScript development, providing shared configurations, development tools, and utilities for building consistent, high-quality projects.\n\nbfra.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.\n\n**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.\n\n## Features\n\n- **AI-Powered Project Creation** - Intelligent scaffolding with `@bfra.me/create` CLI\n- **Shared Configurations** - Consistent ESLint, Prettier, and TypeScript setups\n- **Monorepo Ready** - Optimized for pnpm workspaces and monorepo development\n- **Type-Safe by Default** - Strict TypeScript configurations with comprehensive coverage\n- **Automated Releases** - Semantic versioning and publishing with changesets\n- **Testing Framework** - Vitest-based testing with coverage reporting\n- **Modern Tooling** - Built for ES modules, Node.js 20+, and latest standards\n\n## Quick Start\n\n### Create a New Project\n\n```bash\n# Use the CLI to scaffold a new project\nnpx @bfra.me/create my-project\n\n# With specific template and options\nnpx @bfra.me/create my-library --template library --no-git\n```\n\n### Add to Existing Project\n\n```bash\n# Install shared ESLint configuration\nnpm install --save-dev @bfra.me/eslint-config\n\n# Add to your eslint.config.js\nimport { defineConfig } from '@bfra.me/eslint-config'\n\nexport default defineConfig({\n  typescript: true,\n  prettier: true\n})\n```\n\n## Packages\n\n| Package | Description | Version |\n| --- | --- | --- |\n| [`@bfra.me/create`](packages/create/README.md) | AI-powered CLI for creating projects from templates | [![npm](https://img.shields.io/npm/v/@bfra.me/create?style=for-the-badge)](https://www.npmjs.com/package/@bfra.me/create) |\n| [`@bfra.me/eslint-config`](packages/eslint-config/readme.md) | Shared ESLint configuration with TypeScript and Prettier support | [![npm](https://img.shields.io/npm/v/@bfra.me/eslint-config?style=for-the-badge)](https://www.npmjs.com/package/@bfra.me/eslint-config) |\n| [`@bfra.me/prettier-config`](packages/prettier-config/readme.md) | Opinionated Prettier configuration with multiple variants | [![npm](https://img.shields.io/npm/v/@bfra.me/prettier-config?style=for-the-badge)](https://www.npmjs.com/package/@bfra.me/prettier-config) |\n| [`@bfra.me/tsconfig`](packages/tsconfig/readme.md) | Strict TypeScript configurations for libraries and applications | [![npm](https://img.shields.io/npm/v/@bfra.me/tsconfig?style=for-the-badge)](https://www.npmjs.com/package/@bfra.me/tsconfig) |\n| [`@bfra.me/semantic-release`](packages/semantic-release/readme.md) | Automated versioning and release configuration | [![npm](https://img.shields.io/npm/v/@bfra.me/semantic-release?style=for-the-badge)](https://www.npmjs.com/package/@bfra.me/semantic-release) |\n| [`@bfra.me/badge-config`](packages/badge-config/README.md) | TypeScript API for generating shields.io badge URLs | [![npm](https://img.shields.io/npm/v/@bfra.me/badge-config?style=for-the-badge)](https://www.npmjs.com/package/@bfra.me/badge-config) |\n\n## Usage Examples\n\n### TypeScript Project Setup\n\n```bash\n# 1. Create project with AI assistance\nnpx @bfra.me/create my-app --template typescript\n\n# 2. Or configure existing project\nnpm install --save-dev @bfra.me/eslint-config @bfra.me/prettier-config @bfra.me/tsconfig\n```\n\n#### Configuration Files\n\n`tsconfig.json`:\n\n```json\n{\n  \"extends\": \"@bfra.me/tsconfig\",\n  \"include\": [\"src\"],\n  \"exclude\": [\"dist\", \"node_modules\"]\n}\n```\n\n`package.json`:\n\n```json\n{\n  \"prettier\": \"@bfra.me/prettier-config\",\n  \"scripts\": {\n    \"build\": \"tsc\",\n    \"lint\": \"eslint src --fix\",\n    \"format\": \"prettier --write src\"\n  }\n}\n```\n\n### Monorepo Configuration\n\n```bash\n# Create monorepo structure\nnpx @bfra.me/create my-monorepo --template monorepo\n\n# Add packages to existing monorepo\nnpx @bfra.me/create packages/ui --template library\nnpx @bfra.me/create packages/api --template node\n```\n\n#### Root Configuration\n\n`package.json`:\n\n```json\n{\n  \"workspaces\": [\"packages/*\"],\n  \"scripts\": {\n    \"build\": \"pnpm -r run build\",\n    \"test\": \"pnpm -r run test\",\n    \"lint\": \"pnpm -r run lint\"\n  }\n}\n```\n\n### Badge Generation\n\n```typescript\nimport { buildStatus, coverage, version } from '@bfra.me/badge-config/generators'\n\n// Generate status badges\nconst buildBadge = buildStatus('passing')\n// =\u003e https://img.shields.io/badge/build-passing-green\n\nconst coverageBadge = coverage(85)\n// =\u003e https://img.shields.io/badge/coverage-85%25-yellow\n\nconst versionBadge = version('1.2.3')\n// =\u003e https://img.shields.io/badge/version-1.2.3-blue\n```\n\n## Development\n\n\u003e [!NOTE]\n\u003e\n\u003e This project requires Node.js 20+ and pnpm for optimal performance.\n\n### Setup\n\n```bash\n# Clone the repository\ngit clone https://github.com/bfra-me/works.git\ncd works\n\n# Install dependencies (use bootstrap, not install)\npnpm bootstrap\n\n# Build all packages\npnpm build\n```\n\n### Development Workflow\n\n```bash\n# Start development mode (watches all packages)\npnpm dev\n\n# Run tests across all packages\npnpm test\n\n# Lint and fix code\npnpm lint --fix\n\n# Full validation pipeline\npnpm validate\n```\n\n### Quality Assurance\n\n```bash\n# Type checking\npnpm type-check\n\n# Type coverage reporting\npnpm type-coverage\n\n# Package validation\npnpm lint-packages\n\n# Integration testing\npnpm test\n```\n\n## Documentation\n\n- **[Getting Started Guide](docs/src/content/docs/getting-started/introduction.mdx)** - Comprehensive introduction and setup\n- **[Configuration Guide](docs/src/content/docs/guides/configuration.mdx)** - Best practices for package configuration\n- **[API Reference](docs/src/content/docs/reference/index.mdx)** - Complete API documentation\n\n## Why bfra.me Works?\n\n**For Individual Developers:**\n\n- Skip tedious configuration setup\n- Get consistent, professional-grade tooling\n- Focus on building features, not fighting tools\n- Learn modern development best practices\n\n**For Teams:**\n\n- Standardize development workflows across projects\n- Reduce onboarding time for new team members\n- Maintain code quality with minimal effort\n- Enable faster feature delivery with proven patterns\n\n**For Organizations:**\n\n- Consistent architecture patterns across teams\n- Reduced maintenance overhead for tooling\n- Built-in best practices for scalability and performance\n- Battle-tested configurations used in production\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbfra-me%2Fworks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbfra-me%2Fworks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbfra-me%2Fworks/lists"}