# PMK .gitignore
#
# Ignores build output, machine-local config, and credentials/API secrets.
# Safe to commit: LICENSE, README.md, Cargo.toml, src/, docs/, board templates.

# ── Environment & API secrets (never commit) ───────────────────────────────────

.env
.env.*
!.env.example

secrets/
**/secrets/

# Common credential filenames
**/credentials.json
**/credentials.toml
**/*credentials*.json
**/*credentials*.toml
**/*secrets*.json
**/*secrets*.toml
**/*secrets*.yaml
**/*secrets*.yml

# API keys, tokens, signing material
**/*apikey*
**/*api-key*
**/*api_key*
**/*.token
**/*.tokens
**/*_token
**/*_token.*
AuthKey_*.p8
*.p8
*.p12
*.pem
*.key
!**/*.keymap  # QMK/Vial keymap files, not private keys

# Cargo registry / publish tokens (local only)
.cargo/credentials.toml
.cargo/config.local.toml

# ── Local-only firmware / build overrides ──────────────────────────────────────

**/*.local.toml
**/*.local.json
**/*.local.yaml
**/*.local.yml
keyboard.local.toml
**/keyboard.local.toml

# ── Generated by Cargo ─────────────────────────────────────────────────────────

/target/
debug/

# These are backup files generated by rustfmt
**/*.rs.bk

# MSVC Windows builds of rustc generate these, which store debugging information
*.pdb

# Generated by cargo mutants
**/mutants.out*/

# ── Embedded / flash artifacts (local builds) ──────────────────────────────────

*.uf2
*.bin
*.hex
*.elf
*.map

# ── macOS ──────────────────────────────────────────────────────────────────────

.DS_Store
.AppleDouble
.LSOverride
._*

# ── Editors ────────────────────────────────────────────────────────────────────

.idea/
*.log

# RustRover — see https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
#.idea/
