# NIP Documentation

Welcome to the NIP documentation! This guide will help you find what you need.

## New to NIP?

Start here:

1. **[Getting Started Guide](getting-started.md)** - Complete introduction with examples
2. **[Quick Reference](quick-reference.md)** - Command cheat sheet
3. **[Bootstrap Overview](bootstrap-overview.md)** - Understanding automatic build tool management

## User Guides

### Package Management
- **[Getting Started](getting-started.md)** - Installation and basic usage
- **[Source Build Guide](source-build-guide.md)** - Building packages from source
- **[Arch Linux Guide](arch-linux-guide.md)** - Hybrid package management on Arch
- **[Gentoo + Nix Guide](gentoo-nix-guide.md)** - Using Nix packages on Gentoo

### Bootstrap System
- **[Bootstrap Overview](bootstrap-overview.md)** - What is the bootstrap system?
- **[Bootstrap Guide](bootstrap-guide.md)** - Detailed usage and commands
- **[Bootstrap Detection Flow](bootstrap-detection-flow.md)** - How automatic detection works
- **[Container Builds](container-builds.md)** - Docker/Podman integration
- **[Binary Cache](binary-cache.md)** - Local caching system
- **[Remote Cache](remote-cache.md)** - Team collaboration with remote cache
- **[Automatic Updates](automatic-updates.md)** - Self-updating system

### Build System
- **[Build Flow](build-flow.md)** - Understanding the build process
- **[Build Configuration](build-configuration.md)** - Configuring builds
- **[Build Examples](build-examples.md)** - Common build scenarios
- **[Build Troubleshooting](build-troubleshooting.md)** - Solving build issues

### Advanced Topics
- **[Architecture](architecture.md)** - System architecture overview
- **[Security Features](security-features.md)** - Security and verification
- **[Remote CLI Guide](remote_cli_guide.md)** - Remote package management

## Developer Guides

### Bootstrap System
- **[Bootstrap API](bootstrap-api.md)** - API reference for developers
- **[Recipe Authoring](../recipes/AUTHORING-GUIDE.md)** - Creating bootstrap recipes
- **[Build Binaries](../recipes/BUILD-BINARIES.md)** - Building standalone binaries

### Build System
- **[Build System Help](build-system-help.md)** - Build system internals
- **[Types Reference](nimpak_types_reference.md)** - Core type definitions

### Package Format
- **[Formats and Concepts](formats_and_concepts.md)** - Package formats
- **[Remote Repository Specification](remote-repository-specification.md)** - Repository format

## Reference

### Command Line
- **[Enhanced CLI Interface](enhanced-cli-interface.md)** - CLI design
- **[JSON Output](json-output.md)** - Machine-readable output
- **[Shell Interface](shell-interface.md)** - Interactive shell

### Configuration
- **[Build Configuration](build-configuration.md)** - Build settings
- **Schemas** - See `docs/schemas/` directory

### Security
- **[Security Features](security-features.md)** - Overview
- **[Security and Verification](security-and-verification-system.md)** - Detailed system
- **[Hash Algorithm Migration](HASH_ALGORITHM_MIGRATION.md)** - Blake2b to Blake3

## Quick Navigation

### I want to...

**Install a package**
→ [Getting Started Guide](getting-started.md#your-first-package)

**Build from source**
→ [Source Build Guide](source-build-guide.md)

**Understand automatic bootstrap**
→ [Bootstrap Overview](bootstrap-overview.md#how-it-works)

**Use NIP on Arch Linux**
→ [Arch Linux Guide](arch-linux-guide.md)

**Build in containers**
→ [Getting Started Guide](getting-started.md#container-builds-recommended-for-arch-linux)

**Manage build tools**
→ [Bootstrap Guide](bootstrap-guide.md#managing-bootstrap-tools)

**Troubleshoot builds**
→ [Build Troubleshooting](build-troubleshooting.md)

**Create custom recipes**
→ [Recipe Authoring Guide](../recipes/AUTHORING-GUIDE.md)

**Understand the API**
→ [Bootstrap API](bootstrap-api.md)

## Documentation Structure

```
docs/
├── README.md                          # This file
├── getting-started.md                 # Start here!
│
├── User Guides/
│   ├── bootstrap-overview.md          # Bootstrap system overview
│   ├── bootstrap-guide.md             # Bootstrap usage
│   ├── bootstrap-detection-flow.md    # Detection logic
│   ├── source-build-guide.md          # Source building
│   ├── arch-linux-guide.md            # Arch Linux workflow
│   ├── build-flow.md                  # Build process
│   ├── build-configuration.md         # Build config
│   ├── build-examples.md              # Build examples
│   └── build-troubleshooting.md       # Troubleshooting
│
├── Developer Guides/
│   ├── bootstrap-api.md               # Bootstrap API
│   ├── architecture.md                # System architecture
│   ├── build-system-help.md           # Build internals
│   └── nimpak_types_reference.md      # Type reference
│
├── Reference/
│   ├── enhanced-cli-interface.md      # CLI reference
│   ├── json-output.md                 # JSON format
│   ├── security-features.md           # Security
│   └── formats_and_concepts.md        # Package formats
│
└── schemas/                           # JSON schemas
```

## Contributing to Documentation

Found an issue or want to improve the docs?

1. Documentation lives in `nip/docs/`
2. Use Markdown format
3. Follow existing structure and style
4. Test all code examples
5. Update this index when adding new docs

## Getting Help

- **Issues**: https://git.maiwald.work/Nexus/NexusToolKit/issues
- **Wiki**: https://git.maiwald.work/Nexus/NexusToolKit/wiki
- **Repository**: https://git.maiwald.work/Nexus/NexusToolKit

## Documentation Status

| Document | Status | Last Updated |
|----------|--------|--------------|
| Getting Started | ✅ Complete | 2025-11 |
| Bootstrap Overview | ✅ Complete | 2025-11 |
| Bootstrap Guide | ✅ Complete | 2025-11 |
| Bootstrap Detection Flow | ✅ Complete | 2025-11 |
| Bootstrap API | ✅ Complete | 2025-11 |
| Source Build Guide | ✅ Complete | 2025-11 |
| Arch Linux Guide | ✅ Complete | 2025-11 |
| Gentoo + Nix Guide | ✅ Complete | 2025-11 |
| Build Flow | ✅ Complete | 2025-11 |
| Container Builds | ✅ Complete | 2025-11 |
| Binary Cache | ✅ Complete | 2025-11 |
| Remote Cache | ✅ Complete | 2025-11 |
| Automatic Updates | ✅ Complete | 2025-11 |
| Recipe Authoring | ✅ Complete | 2025-11 |
| Build Binaries | ✅ Complete | 2025-11 |

## Summary

The documentation is organized to help you:

1. **Get started quickly** - Follow the getting started guide
2. **Learn by doing** - Practical examples throughout
3. **Understand deeply** - Detailed explanations when needed
4. **Reference easily** - Quick lookup for specific topics

Start with [Getting Started](getting-started.md) and explore from there!
