## MongoDB Storage (`/db/` Route)
Optional MongoDB-backed route for JSON-LD documents that need scale (social feeds, posts, follows). All other routes continue using the filesystem unchanged.
```bash
# Install the optional MongoDB driver
npm install mongodb
# Start with MongoDB enabled
jss start --mongo --mongo-url mongodb://localhost:27017 --mongo-database solid
```
### Operations
```bash
# Store a document
curl -X PUT http://localhost:4443/db/alice/notes/1 \
-H "Content-Type: application/ld+json" \
-H "Authorization: Bearer " \
-d '{"@context": "https://schema.org/", "@type": "Note", "text": "Hello"}'
# Read it back
curl http://localhost:4443/db/alice/notes/1
# List container (derived from URI prefixes)
curl http://localhost:4443/db/alice/
# Delete
curl -X DELETE http://localhost:4443/db/alice/notes/1 \
-H "Authorization: Bearer "
```
### How It Works
- `GET /db/:path` retrieve a document by URI, or list a virtual container
- `PUT /db/:path` create or update (upsert) a JSON-LD document
- `DELETE /db/:path` remove a document
- Returns standard LDP headers (Link, ETag, WAC-Allow, CORS)
- Supports conditional requests (If-Match, If-None-Match)
- Container listings are computed from URI prefix queries no directory management needed
- Auth: pod owner can write (`/db/{podName}/...`), reads are public
- MongoDB is an optional dependency the server runs without it