Skip to content

Commit 49b62c5

Browse files
authored
Merge pull request #269 from yamadashy/fead/website-add-docs
2 parents c65b1a0 + 7a9c3ac commit 49b62c5

12 files changed

+875
-1
lines changed

website/client/.vitepress/config.mts

+42-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,48 @@ export default defineConfig({
1212
},
1313
themeConfig: {
1414
logo: { src: '/images/repomix-logo.svg', width: 24, height: 24 },
15-
nav: [{ text: 'Join Discord', link: 'https://discord.gg/wNYzTwZFku' }],
15+
search: {
16+
provider: 'local',
17+
},
18+
nav: [
19+
// guide
20+
{ text: 'Guide', link: '/guide/' },
21+
{ text: 'Join Discord', link: 'https://discord.gg/wNYzTwZFku' },
22+
],
23+
sidebar: {
24+
'/guide/': [
25+
{
26+
text: 'Guide',
27+
items: [
28+
{ text: 'Getting Started', link: '/guide/' },
29+
{ text: 'Installation', link: '/guide/installation' },
30+
{ text: 'Basic Usage', link: '/guide/usage' },
31+
{ text: 'Prompt Examples', link: '/guide/prompt-examples' },
32+
{ text: 'Output Formats', link: '/guide/output' },
33+
{ text: 'Command Line Options', link: '/guide/command-line-options' },
34+
{ text: 'Remote Repository Processing', link: '/guide/remote-repository-processing' },
35+
{ text: 'Configuration', link: '/guide/configuration' },
36+
{ text: 'Security', link: '/guide/security' },
37+
{
38+
text: 'Development',
39+
items: [
40+
{ text: 'Contributing', link: '/guide/development/' },
41+
{ text: 'Setup', link: '/guide/development/setup' },
42+
],
43+
},
44+
],
45+
},
46+
],
47+
'/development/': [
48+
{
49+
text: 'Development',
50+
items: [
51+
{ text: 'Contributing', link: '/development/' },
52+
{ text: 'Setup', link: '/development/setup' },
53+
],
54+
},
55+
],
56+
},
1657
socialLinks: [{ icon: 'github', link: 'https://github.com/yamadashy/repomix' }],
1758
footer: {
1859
message: 'Released under the MIT License.',
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# Command Line Options
2+
3+
## Basic Options
4+
5+
```bash
6+
repomix [directory] # Process specific directory (default: ".")
7+
```
8+
9+
## Output Options
10+
11+
| Option | Description | Default |
12+
|--------|-------------|---------|
13+
| `-o, --output <file>` | Output file name | `repomix-output.txt` |
14+
| `--style <type>` | Output style (`plain`, `xml`, `markdown`) | `plain` |
15+
| `--output-show-line-numbers` | Add line numbers | `false` |
16+
| `--copy` | Copy to clipboard | `false` |
17+
| `--no-file-summary` | Disable file summary | `true` |
18+
| `--no-directory-structure` | Disable directory structure | `true` |
19+
| `--remove-comments` | Remove comments | `false` |
20+
| `--remove-empty-lines` | Remove empty lines | `false` |
21+
22+
## Filter Options
23+
24+
| Option | Description |
25+
|--------|-------------|
26+
| `--include <patterns>` | Include patterns (comma-separated) |
27+
| `-i, --ignore <patterns>` | Ignore patterns (comma-separated) |
28+
29+
## Remote Repository
30+
31+
| Option | Description |
32+
|--------|-------------|
33+
| `--remote <url>` | Process remote repository |
34+
| `--remote-branch <name>` | Specify branch/tag/commit |
35+
36+
## Configuration
37+
38+
| Option | Description |
39+
|--------|-------------|
40+
| `-c, --config <path>` | Custom config file path |
41+
| `--init` | Create config file |
42+
| `--global` | Use global config |
43+
44+
## Security
45+
46+
| Option | Description | Default |
47+
|--------|-------------|---------|
48+
| `--no-security-check` | Disable security check | `true` |
49+
50+
## Other Options
51+
52+
| Option | Description |
53+
|--------|-------------|
54+
| `-v, --version` | Show version |
55+
| `--verbose` | Enable verbose logging |
56+
| `--top-files-len <number>` | Number of top files to show | `5` |
57+
58+
## Examples
59+
60+
```bash
61+
# Basic usage
62+
repomix
63+
64+
# Custom output
65+
repomix -o output.xml --style xml
66+
67+
# Process specific files
68+
repomix --include "src/**/*.ts" --ignore "**/*.test.ts"
69+
70+
# Remote repository
71+
repomix --remote user/repo --remote-branch main
72+
```

website/client/guide/configuration.md

+84
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Configuration
2+
3+
## Quick Start
4+
5+
Create configuration file:
6+
```bash
7+
repomix --init
8+
```
9+
10+
## Configuration File
11+
12+
`repomix.config.json`:
13+
```json
14+
{
15+
"output": {
16+
"filePath": "repomix-output.xml",
17+
"style": "xml",
18+
"headerText": "Custom header text",
19+
"instructionFilePath": "repomix-instruction.md",
20+
"fileSummary": true,
21+
"directoryStructure": true,
22+
"removeComments": false,
23+
"removeEmptyLines": false,
24+
"topFilesLength": 5,
25+
"showLineNumbers": false,
26+
"copyToClipboard": false,
27+
"includeEmptyDirectories": false
28+
},
29+
"include": ["**/*"],
30+
"ignore": {
31+
"useGitignore": true,
32+
"useDefaultPatterns": true,
33+
"customPatterns": ["tmp/", "*.log"]
34+
},
35+
"security": {
36+
"enableSecurityCheck": true
37+
}
38+
}
39+
```
40+
41+
## Global Configuration
42+
43+
Create global configuration:
44+
```bash
45+
repomix --init --global
46+
```
47+
48+
Location:
49+
- Windows: `%LOCALAPPDATA%\Repomix\repomix.config.json`
50+
- macOS/Linux: `~/.config/repomix/repomix.config.json`
51+
52+
## Ignore Patterns
53+
54+
Priority order:
55+
1. CLI options (`--ignore`)
56+
2. .repomixignore
57+
3. .gitignore
58+
4. Default patterns
59+
60+
`.repomixignore` example:
61+
```text
62+
# Cache directories
63+
.cache/
64+
tmp/
65+
66+
# Build outputs
67+
dist/
68+
build/
69+
70+
# Logs
71+
*.log
72+
```
73+
74+
## Default Ignore Patterns
75+
76+
Common patterns included by default:
77+
```text
78+
node_modules/**
79+
.git/**
80+
coverage/**
81+
dist/**
82+
```
83+
84+
Full list: [defaultIgnore.ts](https://github.com/yamadashy/repomix/blob/main/src/config/defaultIgnore.ts)
+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Contributing to Repomix
2+
3+
## Quick Start
4+
5+
```bash
6+
git clone https://github.com/yamadashy/repomix.git
7+
cd repomix
8+
npm install
9+
```
10+
11+
## Development Commands
12+
13+
```bash
14+
# Run CLI
15+
npm run cli-run
16+
17+
# Run tests
18+
npm run test
19+
npm run test-coverage
20+
21+
# Lint code
22+
npm run lint
23+
```
24+
25+
## Code Style
26+
27+
- Use [Biome](https://biomejs.dev/) for linting and formatting
28+
- Dependency injection for testability
29+
- Keep files under 250 lines
30+
- Add tests for new features
31+
32+
## Pull Request Guidelines
33+
34+
1. Run all tests
35+
2. Pass linting checks
36+
3. Update documentation
37+
4. Follow existing code style
38+
39+
## Need Help?
40+
41+
- [Open an issue](https://github.com/yamadashy/repomix/issues)
42+
- [Join Discord](https://discord.gg/wNYzTwZFku)
+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# Development Setup
2+
3+
## Prerequisites
4+
5+
- Node.js ≥ 18.20.0
6+
- Git
7+
- npm
8+
9+
## Local Development
10+
11+
```bash
12+
# Clone repository
13+
git clone https://github.com/yamadashy/repomix.git
14+
cd repomix
15+
16+
# Install dependencies
17+
npm install
18+
19+
# Run CLI
20+
npm run cli-run
21+
```
22+
23+
## Docker Development
24+
25+
```bash
26+
# Build image
27+
docker build -t repomix .
28+
29+
# Run container
30+
docker run -v ./:/app -it --rm repomix
31+
```
32+
33+
## Project Structure
34+
35+
```
36+
src/
37+
├── cli/ # CLI implementation
38+
├── config/ # Configuration handling
39+
├── core/ # Core functionality
40+
└── shared/ # Shared utilities
41+
```
42+
43+
## Testing
44+
45+
```bash
46+
# Run tests
47+
npm run test
48+
49+
# Test coverage
50+
npm run test-coverage
51+
52+
# Linting
53+
npm run lint-biome
54+
npm run lint-ts
55+
npm run lint-secretlint
56+
```
57+
58+
## Release Process
59+
60+
1. Update version
61+
```bash
62+
npm version patch # or minor/major
63+
```
64+
65+
2. Run tests and build
66+
```bash
67+
npm run test-coverage
68+
npm run build
69+
```
70+
71+
3. Publish
72+
```bash
73+
npm publish
74+
```

website/client/guide/index.md

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Getting Started with Repomix
2+
3+
Repomix is a tool that packs your entire repository into a single, AI-friendly file. It's designed to help you feed your codebase to Large Language Models (LLMs) like Claude, ChatGPT, and Gemini.
4+
5+
## Quick Start
6+
7+
Run this command in your project directory:
8+
9+
```bash
10+
npx repomix
11+
```
12+
13+
That's it! You'll find a `repomix-output.txt` file containing your entire repository in an AI-friendly format.
14+
15+
## Core Features
16+
17+
- **AI-Optimized Output**: Formats your codebase for easy AI processing
18+
- **Token Counting**: Tracks token usage for LLM context limits
19+
- **Git-Aware**: Respects your .gitignore files
20+
- **Security-Focused**: Detects sensitive information
21+
- **Multiple Output Formats**: Choose between plain text, XML, or Markdown
22+
23+
## What's Next?
24+
25+
- [Installation Guide](./installation.md): Different ways to install Repomix
26+
- [Usage Guide](./usage.md): Learn about basic and advanced features
27+
- [Configuration](./configuration.md): Customize Repomix for your needs
28+
- [Security Features](./security.md): Learn about security checks
29+
30+
## Community
31+
32+
Join our [Discord community](https://discord.gg/wNYzTwZFku) for:
33+
- Getting help with Repomix
34+
- Sharing your experiences
35+
- Suggesting new features
36+
- Connecting with other users
37+
38+
## Support
39+
40+
Found a bug or need help?
41+
- [Open an issue on GitHub](https://github.com/yamadashy/repomix/issues)
42+
- Join our Discord server
43+
- Check the [documentation](https://repomix.com)

0 commit comments

Comments
 (0)