# NIKAME

[![CI](https://github.com/nikame-dev/nikame/actions/workflows/ci.yml/badge.svg)](https://github.com/nikame-dev/nikame/actions/workflows/ci.yml)
[![PyPI version](https://badge.fury.io/py/nikame.svg)](https://badge.fury.io/py/nikame)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![Python Versions](https://img.shields.io/pypi/pyversions/nikame.svg)](https://pypi.org/project/nikame/)

**Describe your infrastructure. NIKAME builds the glue.**

NIKAME is an intelligent infrastructure framework designed for high-fidelity AI and Cloud applications. It doesn't just generate templates—it understands your stack. Powered by the **Matrix Engine**, NIKAME automatically detects module combinations and injects the complex integration logic (the "glue") required for production-grade systems.

---

## 🌟 Key Features

### 1. Matrix Engine (Intelligence Layer)
The Matrix Engine is the heart of NIKAME. It analyzes your `nikame.yaml` to detect "cross-module interactions." If you add `PostgreSQL` and `Redpanda`, it doesn't just provision them; it automatically generates a **Transactional Outbox Pattern** to guarantee event delivery.

### 2. Codegen Quality Rules Engine
Every line of code generated by NIKAME passes through a strict **Rules Engine** before reaching your disk.
- **P0 Rules**: Hard failures (e.g., broken Python imports, missing Pydantic settings).
- **P1 Rules**: Quality standards (e.g., proper retry logic for DB connections, structured JSON logging, async SQLAlchemy usage).
- **Auto-Fixing**: The engine can automatically patch common issues like missing `ResponseModel` in FastAPI.

### 3. Preflight Readiness System
Run `nikame preflight` to validate your local environment and project configuration before you even start. It checks for:
- Docker/Kubernetes connectivity.
- Cloud provider credentials (AWS/GCP).
- Module conflict detection (e.g., preventing two different API frameworks in one project).

### 4. High-Fidelity Infrastructure
- **Cloud Native**: Terraform and Helm generation for AWS/Local.
- **Security First**: Automatic NetworkPolicy, PodSecurityContext, and Secret management.
- **Observability**: Built-in Grafana dashboards, Prometheus alerts, and OpenTelemetry tracing.

---

## 🛠️ CLI Reference

| Command | Category | Description |
|:---|:---|:---|
| `nikame init` | Setup | Initialize a new project via Interactive Wizard or YAML config. |
| `nikame templates` | Registry | Discover, download, and publish project templates (`search`, `use`, `publish`). |
| `nikame up` | Ops | Start all local services via Docker Compose. |
| `nikame status` | Ops | Show real-time health and endpoints for all running services. |
| `nikame logs` | Ops | Stream and **pretty-print** JSON logs from your containers. |
| `nikame preflight` | Quality | Run production-readiness checks on your current project. |
| `nikame db` | Data | Manage Alembic migrations (`migrate`, `upgrade`, `seed`). |
| `nikame add <mod>` | Config | Add a module (e.g. `qdrant`, `redis`) to your active stack. |
| `nikame diff` | Config | Detect drift between your config and generated code. |
| `nikame regenerate` | Config | Re-run the full codegen matrix (apply manual YAML edits). |
| `nikame ml` | MLOps | Manage model versions and pull from HuggingFace. |
| `nikame github` | CI/CD | Push project secrets and configs to GitHub Actions. |
| `nikame tunnel` | Dev | Expose your local API to a public URL via Ngrok. |
| `nikame verify` | Quality | Verify that the generated code is importable and valid. |
| `nikame destroy` | Cleanup | Tear down all infrastructure and volumes. |
| `nikame templates search` | Registry | Search for community templates in the global registry. |
| `nikame templates use <id>` | Registry | Clone a template and launch the setup wizard immediately. |

---

## 🚀 Quick Start

```bash
# Install NIKAME
pip install nikame

# Start the interactive wizard
nikame init --output ./my-stack

# Verify your environment
nikame preflight --project-dir ./my-stack

# Launch the stack
cd my-stack
nikame up

# Check status
nikame status
```

---

## 🤝 Maintainer

Created and maintained by [@omdeepb69](https://github.com/omdeepb69). Built with ❤️ for the AI/Cloud community.

---

## License

Apache 2.0
