---
title: "Deploy Shelf Template"
description: "Self-hosted saved-link manager with Postgres, Redis, and Meilisearch."
category: "Starters"
url: https://railway.com/deploy/shelf-template
---

# Deploy Shelf Template

Self-hosted saved-link manager with Postgres, Redis, and Meilisearch.

**[Deploy Shelf Template on Railway](https://railway.com/template/shelf-template)**

- **Creator:** eden lane's Projects
- **Category:** Starters

## Template content

### Redis https://cdn.sanity.io/images/sy1jschh/production/0ce0bfdcfbdbf69662b1116671f97c2dd788b655-157x157.svg

- **Image:** redis:8.2.1
- **Start command:** `/bin/sh -c "rm -rf $RAILWAY_VOLUME_MOUNT_PATH/lost+found/ && exec docker-entrypoint.sh redis-server --requirepass $REDIS_PASSWORD --save 60 1 --dir $RAILWAY_VOLUME_MOUNT_PATH"`

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

### Meilisearch

- **Image:** getmeili/meilisearch:v1.14

### Shelf

- **Source:** https://github.com/eden-lane/shelf
- **Public domain:** Yes

## Documentation

# Deploy and Host Shelf

Shelf is a self-hosted saved-link manager with email/password session auth, nested folders, tags, full-text search, favicon storage, and a browser-extension-friendly API.

## About Hosting Shelf

This template deploys Shelf as a single public web/API service backed by Postgres, Redis, and Meilisearch. The app service serves the React frontend and API from the same origin, runs Drizzle migrations before startup, and exposes `/health` for Railway health checks.

After deployment, open the Shelf service URL and create the first account. Registration defaults to `first-user-only`, so signup closes automatically after the first user exists.

## Why Deploy Shelf

Shelf is designed for users who want a self-hosted place to save, organize, and search links without relying on a proprietary bookmark service.

## Common Use Cases

- Save links into folders and tags.
- Search saved links through Meilisearch.
- Use a private self-hosted bookmark manager for personal workflows.
- Connect browser-extension clients to the same API.

## Dependencies for Shelf

Shelf needs a relational database, a Redis-compatible queue backend, and a search index.

### Deployment Dependencies

- Postgres for app data and sessions.
- Redis for background enrichment jobs.
- Meilisearch for saved-link search.


## Similar templates

- [open-excalidraw](https://railway.com/deploy/open-excalidraw) — Self-hostable collaborative drawing built on Excalidraw
- [caring-vibrancy](https://railway.com/deploy/caring-vibrancy) — Deploy and Host caring-vibrancy with Railway
- [Appsmith](https://railway.com/deploy/appsmith-1) — Low-code platform for internal tools, dashboards, and admin panels.

Open this page in a browser: https://railway.com/deploy/shelf-template
