# 🌱 Contributing to speedgrep

Welcome! Before you open a PR, **please read this carefully.**

## 🚫 SIMD / Assembly / GPU PRs
Please do NOT submit PRs that:
- add SIMD intrinsics
- add handwritten assembly
- require AVX, AVX2, AVX-512, NEON, or any other CPU extensions
- offload searching to the GPU
- require a 2GB lookup table “for performance”
- turn speedgrep into a 400‑crate dependency monster
- add cleaner error messages

speedgrep aims to stay **small, simple, and portable**.
<br>
also **please don't add ANY dependencies to speedgrep, its a standalone package**

If your PR requires a PhD in microarchitecture to review, it will be closed with love.

## ✔️ PRs we DO accept
- bug fixes
- portability improvements
- correctness improvements
- small, elegant optimizations
- documentation improvements
- benchmarks (within reason)
- code clarity improvements
- unsafety for 0.2% performance boost

## 🧘 Philosophy
speedgrep is about:
- simplicity
- readability
- maintainability
- “fast enough without becoming a spaceship” **<- important**

If your PR makes speedgrep faster *and* smaller *and* cleaner, you are a hero.

If it makes speedgrep faster but turns it into a 20,000‑line SIMD labyrinth,  
please fork the project and name it **quickgrep**.

## 🌟 What I expect 
- Clean code (no spaggeti bollagnetti)
- Clear time difference if performance-focused

*Sincerely, G0o53*
