Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 11 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<h1 align="center">Flint</h1>

<p align="center">
[Experimental] Monorepo for Flint: a fast, friendly linter.
[Experimental] A fast, friendly linter for JavaScript, TypeScript, and more.
❤️‍🔥
</p>

Expand All @@ -19,36 +19,21 @@

<img align="right" alt="A flaming heart atop a brown linter-style squiggly line" height="128" src="docs/flint.png" width="105">

**Flint** is an experimental new linter.
It's a proof-of-concept to explore the concepts in the following blog posts:
**Flint** is an experimental new _"hybrid"_ linter: one that combines...

- [Hybrid Linters: The Best of Both Worlds](https://www.joshuakgoldberg.com/blog/hybrid-linters-the-best-of-both-worlds)
- [If I Wrote a Linter, Part 1: Architecture](https://www.joshuakgoldberg.com/blog/if-i-wrote-a-linter-part-1-architecture)
- [If I Wrote a Linter, Part 2: Developer Experience](https://www.joshuakgoldberg.com/blog/if-i-wrote-a-linter-part-2-developer-experience)
- [If I Wrote a Linter, Part 3: Ecosystem](https://www.joshuakgoldberg.com/blog/if-i-wrote-a-linter-part-3-ecosystem)
- [If I Wrote a Linter, Part 4: Summary](https://www.joshuakgoldberg.com/blog/if-i-wrote-a-linter-part-4-summary)
- 😌 **Ergonomics**: the ease of writing rules in JavaScript or TypeScript
- ⚡️ **Performance**: much of the speed of native linters with intelligent caching and native code for bottlenecking operations
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@lishaduck would these :emoji: **Bold**:s also turn you away?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We just posted #2456 on social media so I'd like to merge now. But feel free to push a removal of these / poke me to, I'm happy either way!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, sorry. I hit command+enter and it started a review.

Yeah, probably


This project might go nowhere.
It might show some of those ideas to be wrong.
It might become a real linter.
Only time will tell.

In the meantime, come talk about it on the [Flint Discord](https://flint.fyi/discord).

👉 See [flint.fyi](https://flint.fyi) for additional documentation.

## Why?

Flint is an attempt at a "hybrid" linter: one that combines...
It also brings in several improvements over traditional linter paradigms:

- **Ergonomics**: the ease of writing rules in JavaScript or TypeScript
- **Performance**: some of the speed of native linters by parsing and type checking with typescript-go
- Streamlined configuration: flexible configuration files that still preserve readability
- Type-aware caching: significantly improving performance when linting changes to large repositories
- Unified core: promoting popular rules to the core project for easier, more reliable inclusion

It also brings in several improvements over traditional linter paradigms:
For deep dives into Flint, see:

- **Streamlined configuration**: flexible configuration files that still preserve readability
- **Type-aware caching**: significantly improving performance when linting changes to large repositories
- **Unified core**: promoting popular rules to the core project for easier, more reliable inclusion
- **[Introducing Flint](https://www.flint.fyi/blog/introducing-flint)**: the core hypotheses Flint is testing out, with why we hope they succeed.
- **[What Flint Does Differently](https://www.flint.fyi/blog/what-flint-does-differently)**: a full list of the core, developer, and end-user design differences in Flint compared to other linters.

## Usage

Expand Down
1 change: 1 addition & 0 deletions cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
"barrymichaeldoyle",
"bday",
"BDFL",
"bottlenecking",
"bradzacher",
"codegen",
"codemod",
Expand Down
Loading