Skip to content

Commit a3b2f43

Browse files
pfillion42claude
andcommitted
chore: prepare for open source release (LICENSE, README, CONTRIBUTING)
- Add MIT license - Rewrite README with features, config, architecture, security docs - Add CONTRIBUTING.md with development guidelines - Add open source metadata to both package.json (license, repo, keywords) - Remove PLAN.md and DEVLOG.md from tracking (local dev files) - npm audit: 5 moderate vulns in esbuild/vite/vitest (dev-only, fix requires breaking major version upgrade, deferred) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 742fc1a commit a3b2f43

10 files changed

Lines changed: 278 additions & 497 deletions

File tree

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,7 @@ npm-debug.log*
3131

3232
# Cache
3333
.cache/
34+
35+
# Project-specific (local only)
36+
PLAN.md
37+
DEVLOG.md

CONTRIBUTING.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
# Contributing to memviz
2+
3+
Thanks for your interest in contributing! Whether it's a bug report, a feature idea, or a pull request, all contributions are welcome.
4+
5+
## Prerequisites
6+
7+
- Node.js 20+
8+
- A SQLite-vec database from [MCP Memory Service](https://github.com/doobidoo/mcp-memory-service) (for manual testing)
9+
10+
## Getting started
11+
12+
```bash
13+
git clone https://github.com/pfillion42/memviz.git
14+
cd memviz
15+
16+
# Backend
17+
cd server
18+
npm install
19+
cp .env.example .env
20+
# Set MEMORY_DB_PATH in .env
21+
22+
# Frontend
23+
cd ../client
24+
npm install
25+
```
26+
27+
## Development workflow
28+
29+
The project is a monorepo with two independent packages (`server/` and `client/`). Each has its own `package.json`, tests, and lint config.
30+
31+
```bash
32+
# Start the backend (auto-reload)
33+
cd server && npm run dev
34+
35+
# Start the frontend (Vite dev server, proxied to backend)
36+
cd client && npm run dev
37+
```
38+
39+
### Running tests
40+
41+
```bash
42+
cd server && npm test # Backend tests (Vitest)
43+
cd client && npm test # Frontend tests (Vitest + Testing Library)
44+
```
45+
46+
Both packages also support watch mode:
47+
48+
```bash
49+
npm run test:watch
50+
```
51+
52+
### Linting
53+
54+
```bash
55+
cd server && npm run lint
56+
cd client && npm run lint
57+
```
58+
59+
## Code style
60+
61+
- **TypeScript** strict mode in both packages
62+
- **No accented characters** in code or comments (project convention)
63+
- **Vitest** for all tests
64+
- **React Query** hooks for data fetching on the frontend
65+
- **Zod** schemas for request validation on the backend
66+
67+
## Pull requests
68+
69+
1. Fork the repo and create a branch from `main`
70+
2. Make your changes
71+
3. Make sure all tests pass (`npm test` in both `server/` and `client/`)
72+
4. Make sure lint passes (`npm run lint` in both packages)
73+
5. Write a clear PR description explaining what changed and why
74+
75+
If you're adding a new feature, please include tests. The project currently has 339 tests and we'd like to keep coverage high.
76+
77+
## Reporting bugs
78+
79+
Open an issue with:
80+
- What you expected to happen
81+
- What actually happened
82+
- Steps to reproduce
83+
- Your environment (Node version, OS)
84+
85+
## Feature ideas
86+
87+
Open an issue to discuss before starting work on large features. This helps avoid duplicate effort and lets us align on the approach.

DEVLOG.md

Lines changed: 0 additions & 209 deletions
This file was deleted.

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 pfillion42
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)