blob: 2f8e45e204546d076b321a9100c281455ca8a831 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
---
title: "Contributing"
description: "Guidelines for contributing to MemoryBench"
sidebarTitle: "Contributing"
---
## Getting Started
1. Fork the repository
2. Clone your fork:
```bash
git clone https://github.com/YOUR_USERNAME/memorybench
cd memorybench
bun install
```
3. Create a branch:
```bash
git checkout -b feature/your-feature
```
## Development Workflow
### Running Tests
```bash
bun test
```
### Running the CLI
```bash
bun run src/index.ts <command>
```
### Running the Web UI
```bash
cd ui
bun run dev
```
## Code Structure
| Directory | Purpose |
|-----------|---------|
| `src/cli/` | CLI commands |
| `src/orchestrator/` | Pipeline execution |
| `src/benchmarks/` | Benchmark adapters |
| `src/providers/` | Provider integrations |
| `src/judges/` | LLM judge implementations |
| `src/types/` | TypeScript interfaces |
| `ui/` | Next.js web interface |
## Contribution Types
### Adding a Provider
See [Extending MemoryBench](/memorybench/extend-provider) for the full guide.
1. Create `src/providers/yourprovider/index.ts`
2. Implement the `Provider` interface
3. Register in `src/providers/index.ts`
4. Add config in `src/utils/config.ts`
5. Submit PR with tests
### Adding a Benchmark
1. Create `src/benchmarks/yourbenchmark/index.ts`
2. Implement the `Benchmark` interface
3. Register in `src/benchmarks/index.ts`
4. Document question types
5. Submit PR with sample data
### Bug Fixes
1. Create an issue describing the bug
2. Reference the issue in your PR
3. Include test cases that reproduce the bug
## Pull Request Guidelines
- Keep PRs focused on a single change
- Update documentation if needed
- Ensure all tests pass
- Follow existing code style
## Questions?
Open an issue on [GitHub](https://github.com/supermemoryai/memorybench/issues).
|