Skip to content

Deploying Lidify

Introduction

Lidify is a self-hosted music discovery tool that helps you find new music based on your listening preferences and create curated playlists. Designed for users of Lidarr and other music management tools, Lidify analyzes your music collection and suggests similar artists and albums you might enjoy.

The application integrates with music metadata services to provide recommendations based on genres, styles, and listening patterns. Lidify bridges the gap between music discovery and your existing music management workflow.

Key highlights of Lidify:

  • Music Discovery: Find new artists based on your library
  • Similar Artist Suggestions: Discover artists similar to ones you love
  • Playlist Generation: Create playlists based on moods or genres
  • Lidarr Integration: Seamlessly add discovered music to Lidarr
  • Listening Statistics: Track your music preferences
  • Genre Exploration: Browse music by genre and style
  • Web Interface: Clean, modern discovery interface
  • API Access: Integrate with other applications
  • Privacy-Focused: No data sharing with third parties
  • Custom Recommendations: Personalized suggestions

This guide walks through deploying Lidify on Klutch.sh using Docker.

Why Deploy Lidify on Klutch.sh

Deploying Lidify on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically builds Lidify from your Dockerfile. Push to GitHub, and your discovery tool deploys.

Persistent Storage: Attach persistent volumes for your preferences and listening history.

HTTPS by Default: Klutch.sh provides automatic SSL certificates for secure access.

GitHub Integration: Connect your repository for automatic redeployments.

Scalable Resources: Allocate resources based on your library size.

Environment Variable Management: Configure integrations securely.

Custom Domains: Assign a custom domain for your discovery interface.

Always-On Availability: Your music discovery tool remains accessible 24/7.

Prerequisites

Before deploying Lidify on Klutch.sh, ensure you have:

  • A Klutch.sh account
  • A GitHub account with a repository for your configuration
  • Basic familiarity with Docker and containerization concepts
  • (Optional) A Lidarr instance for integration
  • (Optional) A custom domain

Understanding Lidify Architecture

Lidify uses a simple architecture:

Web Application: Frontend for browsing and discovering music.

Recommendation Engine: Analyzes your library and generates suggestions.

Integration Layer: Connects with Lidarr and music databases.

Database: Stores preferences and discovery history.

Preparing Your Repository

Repository Structure

lidify-deploy/
├── Dockerfile
├── README.md
└── .dockerignore

Creating the Dockerfile

FROM node:18-alpine
# Install dependencies
RUN apk add --no-cache curl
# Set working directory
WORKDIR /app
# Environment configuration
ENV PORT=3000
ENV LIDARR_URL=${LIDARR_URL:-}
ENV LIDARR_API_KEY=${LIDARR_API_KEY:-}
# Install application (adjust based on actual source)
RUN npm init -y
# Create data directory
RUN mkdir -p /app/data
# Expose port
EXPOSE 3000
# Health check
HEALTHCHECK --interval=30s --timeout=10s --start-period=30s --retries=3 \
CMD curl -f http://localhost:3000/health || exit 1
CMD ["node", "server.js"]

Creating the .dockerignore File

.git
.github
*.md
LICENSE
.gitignore
*.log
.DS_Store
.env
.env.local
node_modules/

Environment Variables Reference

VariableRequiredDefaultDescription
PORTNo3000Server port
LIDARR_URLNo-Lidarr instance URL
LIDARR_API_KEYNo-Lidarr API key

Deploying Lidify on Klutch.sh

    Push Your Repository to GitHub

    Terminal window
    git init
    git add Dockerfile .dockerignore README.md
    git commit -m "Initial Lidify deployment configuration"
    git remote add origin https://github.com/yourusername/lidify-deploy.git
    git push -u origin main

    Create a New Project on Klutch.sh

    Navigate to the Klutch.sh dashboard and create a new project named “lidify” or “music-discovery”.

    Create a New App

    Within your project, create a new app. Connect your GitHub account and select your Lidify repository.

    Configure HTTP Traffic

    In the deployment settings:

    • Select HTTP as the traffic type
    • Set the internal port to 3000

    Set Environment Variables

    Add the following:

    VariableValue
    LIDARR_URLYour Lidarr URL (optional)
    LIDARR_API_KEYYour Lidarr API key (optional)

    Attach Persistent Volumes

    Mount PathRecommended SizePurpose
    /app/data2 GBPreferences and history

    Deploy Your Application

    Click Deploy to start the build process.

    Access Lidify

    Once deployment completes, access your instance at https://your-app.klutch.sh.

Using Lidify

Discovering Music

Find new artists:

  1. Navigate to the discovery interface
  2. Browse recommendations based on your library
  3. Explore similar artists
  4. Add discoveries to Lidarr

Creating Playlists

Build curated playlists:

  1. Select a mood or genre
  2. Review suggested tracks
  3. Customize the playlist
  4. Export or save

Lidarr Integration

Connect with your music manager:

  1. Configure Lidarr connection
  2. Browse your existing library
  3. Add new artists directly
  4. Monitor new releases

Production Best Practices

Performance Tips

  • Index your library regularly
  • Cache recommendation results
  • Monitor API rate limits

Backup Strategy

  1. Back up preferences and history
  2. Export playlists periodically

Troubleshooting

Recommendations Not Loading

  • Check Lidarr connection
  • Verify API keys
  • Review server logs

Integration Issues

  • Test Lidarr connectivity
  • Verify URL and port
  • Check network access

Additional Resources

Conclusion

Deploying Lidify on Klutch.sh enhances your music management workflow with discovery and recommendation features. Find new artists similar to your favorites and never run out of new music to explore.

With Lidarr integration and automatic builds, you can expand your music library with minimal effort.