# {{PROJECT_NAME}} Tech Stack

> **Auto-generated by AIOX** on {{GENERATED_DATE}}
> **Mode:** {{INSTALLATION_MODE}}

## Overview

This document describes the technology stack and tooling decisions for **{{PROJECT_NAME}}**.

---

## Core Technologies

### Runtime & Language

| Technology | Version | Purpose |
|------------|---------|---------|
{{#if IS_NODE}}
| Node.js | {{NODE_VERSION}} | JavaScript runtime |
{{#if IS_TYPESCRIPT}}
| TypeScript | {{TYPESCRIPT_VERSION}} | Type-safe JavaScript |
{{/if}}
{{/if}}
{{#if IS_PYTHON}}
| Python | {{PYTHON_VERSION}} | Programming language |
{{/if}}
{{#if IS_GO}}
| Go | {{GO_VERSION}} | Programming language |
{{/if}}
{{#if IS_RUST}}
| Rust | {{RUST_VERSION}} | Programming language |
{{/if}}

### Package Management

| Tool | Version | Purpose |
|------|---------|---------|
{{#if IS_NODE}}
| npm | {{NPM_VERSION}} | Package manager |
{{/if}}
{{#if IS_PYTHON}}
| pip | Latest | Package installer |
| poetry | {{POETRY_VERSION}} | Dependency management (optional) |
{{/if}}
{{#if IS_GO}}
| Go Modules | Built-in | Dependency management |
{{/if}}

---

## Development Tools

### Code Quality

| Tool | Purpose | Configuration |
|------|---------|---------------|
{{#if IS_NODE}}
| ESLint | Linting | `.eslintrc.js` |
| Prettier | Formatting | `.prettierrc` |
{{#if IS_TYPESCRIPT}}
| TypeScript | Type checking | `tsconfig.json` |
{{/if}}
{{/if}}
{{#if IS_PYTHON}}
| Black | Formatting | `pyproject.toml` |
| Flake8 | Linting | `.flake8` |
| mypy | Type checking | `mypy.ini` |
{{/if}}
{{#if IS_GO}}
| gofmt | Formatting | Built-in |
| golint | Linting | N/A |
| go vet | Static analysis | Built-in |
{{/if}}

### Testing

| Tool | Purpose | Location |
|------|---------|----------|
{{#if IS_NODE}}
| Jest | Unit testing | `tests/unit/` |
| Supertest | API testing | `tests/integration/` |
{{/if}}
{{#if IS_PYTHON}}
| pytest | Testing framework | `tests/` |
| pytest-cov | Coverage | `pytest.ini` |
{{/if}}
{{#if IS_GO}}
| go test | Testing framework | `*_test.go` files |
{{/if}}

### Build Tools

| Tool | Purpose |
|------|---------|
{{#if IS_NODE}}
{{#if IS_TYPESCRIPT}}
| tsc | TypeScript compilation |
{{/if}}
| esbuild / rollup | Bundling (if needed) |
{{/if}}
{{#if IS_PYTHON}}
| setuptools | Package building |
| wheel | Distribution format |
{{/if}}
{{#if IS_GO}}
| go build | Compilation |
{{/if}}

---

## Infrastructure

### Version Control

| Service | Purpose |
|---------|---------|
| Git | Version control |
| GitHub | Repository hosting |
| GitHub Actions | CI/CD |

### Deployment

| Platform | Environment | Branch |
|----------|-------------|--------|
{{#if DEPLOYMENT_PLATFORM}}
| {{DEPLOYMENT_PLATFORM}} | Production | `{{PRODUCTION_BRANCH}}` |
{{#if HAS_STAGING}}
| {{DEPLOYMENT_PLATFORM}} | Staging | `{{STAGING_BRANCH}}` |
{{/if}}
{{else}}
| TBD | Production | `main` |
{{/if}}

### Database (if applicable)

| Technology | Purpose | Environment |
|------------|---------|-------------|
{{#if DATABASE}}
| {{DATABASE}} | Primary database | All |
{{/if}}
{{#if CACHE}}
| {{CACHE}} | Caching layer | All |
{{/if}}

---

## Dependencies

### Production Dependencies

{{#if IS_NODE}}
Key dependencies from `package.json`:

| Package | Version | Purpose |
|---------|---------|---------|
{{#each DEPENDENCIES}}
| {{this.name}} | {{this.version}} | {{this.purpose}} |
{{/each}}
{{/if}}

{{#if IS_PYTHON}}
Key dependencies from `requirements.txt`:

| Package | Version | Purpose |
|---------|---------|---------|
{{#each DEPENDENCIES}}
| {{this.name}} | {{this.version}} | {{this.purpose}} |
{{/each}}
{{/if}}

### Development Dependencies

| Package | Purpose |
|---------|---------|
{{#each DEV_DEPENDENCIES}}
| {{this.name}} | {{this.purpose}} |
{{/each}}

---

## Configuration Files

| File | Purpose |
|------|---------|
| `.aiox-core/core-config.yaml` | AIOX configuration |
| `.env.example` | Environment template |
| `.gitignore` | Git ignore rules |
{{#if IS_NODE}}
| `package.json` | Node.js project config |
{{#if IS_TYPESCRIPT}}
| `tsconfig.json` | TypeScript config |
{{/if}}
| `.eslintrc.js` | ESLint rules |
| `.prettierrc` | Prettier config |
{{/if}}
{{#if IS_PYTHON}}
| `pyproject.toml` | Python project config |
| `requirements.txt` | Dependencies |
| `.flake8` | Flake8 config |
{{/if}}
{{#if IS_GO}}
| `go.mod` | Go modules |
| `go.sum` | Dependency checksums |
{{/if}}

---

## Environment Variables

| Variable | Description | Required |
|----------|-------------|----------|
| `NODE_ENV` / `ENV` | Environment name | Yes |
{{#each ENV_VARS}}
| `{{this.name}}` | {{this.description}} | {{this.required}} |
{{/each}}

See `.env.example` for a complete list.

---

## Upgrade Guidelines

### Language/Runtime Updates

1. Check release notes for breaking changes
2. Update version in configuration files
3. Run full test suite
4. Update CI/CD configuration
5. Document changes in CHANGELOG

### Dependency Updates

1. Review changelogs for security fixes
2. Update one dependency at a time
3. Run tests after each update
4. Commit with clear message

```bash
{{#if IS_NODE}}
# Check for updates
npm outdated

# Update specific package
npm update <package-name>
{{/if}}
{{#if IS_PYTHON}}
# Check for updates
pip list --outdated

# Update specific package
pip install --upgrade <package-name>
{{/if}}
```

---

## Security Considerations

- [ ] Dependencies scanned for vulnerabilities
- [ ] Environment variables not committed
- [ ] Secrets stored securely
- [ ] HTTPS enforced in production

---

*Generated by AIOX Documentation Integrity System*
*Template Version: 1.0.0*
