PitchHut logo
One tool to replace 20 CI services with zero dependencies.
Pitch

Ciforge is a comprehensive zero-dependency CLI and GitHub Action that streamlines multiple CI services into a single, robust solution. It enhances code quality, detects secrets, analyzes test coverage, validates configurations, and tracks PR metrics, all while running your complete CI pipeline locally or in GitHub Actions.

Description

ciforge is a powerful, zero-dependency command-line interface (CLI) and GitHub Action designed to simplify continuous integration (CI) processes by consolidating the functionalities of 20 different CI services into one comprehensive tool. This utility enables users to run their entire CI pipeline locally or seamlessly within their GitHub actions, enhancing speed and functionality without the burden of external dependencies.

Key Features

  • Code Quality Assurance: Features intelligent linting combined with Abstract Syntax Tree (AST)-based complexity analysis, helping to identify issues such as cyclomatic complexity and overly long functions.
  • Thorough Test Coverage Analysis: Provides an in-depth inspection to highlight gaps in test coverage, ensuring that code is thoroughly vetting before it moves to production.
  • Secret Detection: Proactively identifies hardcoded credentials and sensitive information to prevent these from being committed to repositories.
  • Configuration Validation: Validates CI/CD and infrastructure configuration files to confirm they are correctly set up, reducing the risk of deployment issues.
  • Pull Request Metrics & Velocity Tracking: Offers insights into pull request metrics like size, churn, and time span, facilitating better project management.
  • AI-Powered Code Review: Integrates with OpenAI to automatically identify logical flaws and potential edge cases that may have been overlooked.
  • Image Optimization: Analyzes assets (such as .png, .jpg, .jpeg) to identify and flag images larger than 500KB, promoting efficient asset management.
  • Localization Synchronization: Compares localization files against a base en.json, allowing teams to find missing translation keys effortlessly.

Usage Example

To run ciforge locally, use the following command:

ciforge --repo . --base-ref origin/main --format markdown --fail-on high

GitHub Action Implementation

ciforge can easily be integrated into workflows. Here is a sample configuration:

steps:
  - uses: actions/checkout@v3
  - name: Run ciforge
    uses: your-org/ciforge@v0.1.0
    with:
      repo: '.'
      base-ref: 'origin/main'
      format: 'markdown'
      fail-on: 'high'
      post-comment: 'true'

By utilizing ciforge, teams can streamline their CI workflows, maintain high code quality, and gain valuable insights, all from a single, efficient tool.

0 comments

No comments yet.

Sign in to be the first to comment.