8000 GitHub - Sabdot33/rsslookup: A free tool to find the RSS feed for any URL
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Sabdot33/rsslookup

 
 

Repository files navigation

🔎 RSS Lookup

GitHub Repo stars

RSS Lookup is a free, open-source tool designed to find the RSS feed associated with any URL. Simply paste the website's address, and RSS Lookup will intelligently scan the site's HTML for feed links and check common feed path conventions.

Check out the live tool: www.rsslookup.com

Features

  • Simple Interface: Clean, easy-to-use single-page application.
  • HTML Meta Tag Detection: Finds feeds specified using standard <link rel="alternate" type="application/rss+xml"> (and Atom) tags.
  • Common Path Fallback: Checks conventional paths like /feed, /rss.xml, /atom.xml if no tags are found.
  • Popular Site Integration: Rules to natively supports popular sites like YouTube, StackExchange, and Reddit.
  • Abuse Prevention: Integrates Cloudflare Turnstile to protect the backend service.
  • User-Friendly Results: Displays found feed URLs clearly and easily copiable.
  • Modern Tech: Built with Next.js for the frontend and Cloudflare Workers for a fast, serverless backend.

Project Structure

This repository contains both the frontend and backend code:

  • .: Root directory contains the Next.js frontend application.
  • worker/: Contains the Cloudflare Worker backend API code.

Getting Started

Follow these instructions to set up and run the project locally or deploy your own instance.

Prerequisites

  • Node.js (LTS version recommended, e.g., >= 18)
  • npm (usually included with Node.js)
  • Wrangler CLI: Install globally with npm install -g wrangler
  • A Cloudflare account (for deploying the worker)
  • A Cloudflare Turnstile account (for site key and secret)

Setup

  1. Clone the repository:

    git clone [https://github.com/mratmeyer/rsslookup.git](https://github.com/mratmeyer/rsslookup.git)
    cd rsslookup
  2. Environment Variables:

    • Frontend: Create a file named .env.local in the root directory. Add the following variables:

      # .env.local (Frontend - in root directory)
      
      # The URL of your deployed Cloudflare Worker API
      NEXT_PUBLIC_API_URL=[https://api.example.com](https://api.example.com)
      
      # Your Cloudflare Turnstile Site Key (public)
      NEXT_PUBLIC_CLOUDFLARE_TURNSTILE_SITE_KEY=YOUR_CLOUDFLARE_TURNSTILE_SITE_KEY
    • Backend: You'll need to set the CLOUDFLARE_TURNSTILE_SECRET as a secret for your Cloudflare Worker.

      • Run this command within the worker/ directory after logging in with Wrangler:
        # Run inside the worker/ directory
        npx wrangler secret put CLOUDFLARE_TURNSTILE_SECRET
      • Wrangler will prompt you to enter your Cloudflare Turnstile secret key.
  3. Install Dependencies:

    • Frontend:
      # Inside the root directory
      npm ci
    • Backend:
      # Inside the worker directory
      cd worker
      npm ci

Running Locally

  1. Run the Frontend Development Server:

    # Inside the root directory
    npm run dev

    The frontend will be available at http://localhost:3000 (or another port if 3000 is busy). It needs the backend worker running to function fully.

  2. Run the Backend Worker Locally:

    # In the worker/ directory
    # Make sure you've set the CLOUDFLARE_TURNSTILE_SECRET locally for testing if needed,
    # or mock the verifyCloudflare function for local dev without turnstile checks.
    npx wrangler dev

    The worker will run locally. Update NEXT_PUBLIC_API_URL in your frontend .env.local to point to the local worker URL (e.g., http://localhost:8787) for local end-to-end testing.

Building & Deploying

  1. Build the Frontend (Static Export):

    # In the root directory
    npm run build

    This generates static HTML/CSS/JS files in the /out directory, ready for deployment to any static hosting provider.

  2. Deploy the Backend Worker:

    • Make sure your worker/wrangler.toml file has the correct name and route configured for your Cloudflare account and desired domain.
    • Deploy using Wrangler:
      # In the worker/ directory
      npx wrangler deploy
    • Remember to set the CLOUDFLARE_TURNSTILE_SECRET in your deployed worker's environment using wrangler secret put.

Available Scripts

Frontend (Run from root directory)

  • npm run dev: Starts the Next.js development server.
  • npm run build: Builds the application for production (static export).
  • npm run start: Starts a production server (less common for static exports).
  • npm run lint: Runs ESLint to check for code style issues.
  • npm run format: Runs Prettier to format the code.

Backend (Run from worker/ directory)

  • npm run format: Runs Prettier to format the code.
  • npx wrangler dev: Runs the worker locally for development.
  • npx wrangler deploy: Deploys the worker to Cloudflare.

License

This project is open source under the Apache 2.0 License. Please see the LICENSE file for details.

Support

RSS Lookup is ad free, open-source, and privacy respecting, now and in the future. If you find RSS Lookup helpful and would like to show your appreciation, you can support its development:

Buy Me A Coffee


Created by Max Ratmeyer - Personal Site

About

A free tool to find the RSS feed for any URL

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.0%
  • CSS 2.0%
0