gptlint

A linter with superpowers! 🔥 Use LLMs to enforce best practices across your codebase.

https://github.com/gptlint/gptlint

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.9%) to scientific vocabulary

Keywords

best-practices gpt linter llms static-analysis
Last synced: 6 months ago · JSON representation ·

Repository

A linter with superpowers! 🔥 Use LLMs to enforce best practices across your codebase.

Basic Info
  • Host: GitHub
  • Owner: gptlint
  • License: mit
  • Language: TypeScript
  • Default Branch: main
  • Homepage: https://gptlint.dev
  • Size: 2.75 MB
Statistics
  • Stars: 279
  • Watchers: 16
  • Forks: 23
  • Open Issues: 6
  • Releases: 9
Topics
best-practices gpt linter llms static-analysis
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing Funding License Citation Security

readme.md

How it works

Use LLMs to enforce best practices across your codebase.

NPM Build Status MIT License Prettier Code Formatting Discuss on Twitter

GPTLint <!-- omit from toc -->

A fundamentally new approach to code quality. Use LLMs to enforce higher-level best practices across your codebase in a way that takes traditional static analysis tools like eslint to the next level.

Features

  • ✅️ enforce higher-level best practices that are impossible with ast-based approaches
  • ✅️ simple markdown format for rules (example, spec)
  • ✅️ easy to disable or customize rules
  • ✅️ add custom, project-specific rules
  • ✅️ same cli and config format as eslint
  • ✅️ supports gptlint.config.js and inline overrides /* gptlint-disable */
  • ✅️ content-based caching
  • ✅️ outputs LLM stats per run (cost, tokens, etc)
  • ✅️ built-in rules are extensively tested w/ evals
  • ✅️ supports all major LLM providers and local models
  • ✅️ augments eslint instead of trying to replace it (we love eslint!)
  • ✅️ includes guidelines for creating your own rules
  • ❌ MVP rules are JS/TS only for now
  • ❌ MVP rules are single-file context only for now
  • ❌ MVP does not support autofixing for now

Demo

Here's a demo of gptlint running on its own codebase:

Check out our docs to get started.

How it works

How it works

Check out our docs on how it works to learn more.

Getting Started

Installation is simple, with the only external dependency required by default being an OpenAI API key.

Check out our docs to get started.

FAQ

Citations

bibtex @software{agentic2024gptlint, title = {GPTLint}, author = {Travis Fischer, Scott Silvi}, year = {2024}, month = {4}, url = {https://github.com/gptlint/gptlint} }

Huge shoutout to Laurentiu Raducu for gifting us the NPM package name. 🙏

License

MIT © Travis Fischer

To stay up to date or learn more, follow @transitive_bs on Twitter.

Owner

  • Name: GPTLint
  • Login: gptlint
  • Kind: organization

A fundamentally new approach to code quality using AI.

Citation (citation.cff)

cff-version: 1.2.0
title: GPTLint
message: >-
  If you use this software, please cite it using the metadata in this file.
abstract: |
  Use LLMs to enforce best practices across your codebase in a way that takes traditional static analysis tools like eslint to the next level.
type: software
authors:
  - given-names: Travis
    family-names: Fischer
    email: travis@transitivebullsh.it
  - given-names: Scott
    family-names: Silvi
    email: scott@teamduality.dev
keywords:
  - Linting
  - Best practices
  - Conformance
  - Technical debt
  - GPTLint
  - ESLint++
  - AI code analysis
license: MIT
date-released: '2024-04-20'
repository-code: https://github.com/gptlint/gptlint
url: https://github.com/gptlint/gptlint

GitHub Events

Total
  • Watch event: 48
  • Fork event: 4
Last Year
  • Watch event: 48
  • Fork event: 4

Packages

  • Total packages: 1
  • Total downloads:
    • npm 387 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 13
  • Total maintainers: 1
npmjs.org: gptlint

A linter with superpowers! Use LLMs to enforce best practices across your codebase in a standardized, configurable, scalable manner.

  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 387 Last month
Rankings
Dependent repos count: 32.6%
Average: 39.7%
Dependent packages count: 46.8%
Maintainers (1)
Last synced: 6 months ago