# Source Types

## Git Repositories

**Advantages:** Preserves git history, can pull updates, automatic language detection.

```
/bluera-knowledge:add-repo https://github.com/vuejs/core --name=vue
```

**Best practices:**
- Use package/library name: `vue`, `fastapi`, `pydantic`
- For monorepos: `org-project` format: `microsoft-typescript`, `vercel-next`
- Include version if tracking specific release: `vue-3.4`, `python-3.11`

## Local Folders

**Advantages:** No git required, fast indexing, perfect for proprietary code.

```
/bluera-knowledge:add-folder /path/to/my-project/api --name=my-api
```

**Best practices:**
- Use descriptive names: `my-api`, `auth-service`, `shared-utils`
- Index focused directories (not entire ~/)
- Update by re-indexing: `/bluera-knowledge:index my-api`

## Web Documentation

**Advantages:** Access web-only content, handles JS-rendered sites, follows links.

```
/bluera-knowledge:crawl https://fastapi.tiangolo.com --name=fastapi-docs --max-pages=100
```

**Best practices:**
- Append `-docs` to library name: `fastapi-docs`, `vue-docs`
- Set `max-pages` to avoid crawling entire internet
- Use `--headless` for JavaScript-heavy sites
- Crawl specific documentation paths, not marketing pages

## Naming Anti-Patterns

- Generic names: `docs`, `code`, `library`
- Unclear abbreviations: `fp`, `lib1`, `proj`
- Dates without context: `2024-01-15`
- Redundant words: `my-project-library-code`
