https://github.com/aschiavon91/harpoon
easy to use HTTP webhooks web interface in Phoenix LiveView
https://github.com/aschiavon91/harpoon
elixir liveview phoenix phoenix-framework phoenix-liveview tailwindcss webhook webhook-receiver
Last synced: 3 months ago
JSON representation
easy to use HTTP webhooks web interface in Phoenix LiveView
- Host: GitHub
- URL: https://github.com/aschiavon91/harpoon
- Owner: aschiavon91
- Created: 2023-11-03T14:13:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-18T18:39:28.000Z (3 months ago)
- Last Synced: 2025-01-18T18:50:37.836Z (3 months ago)
- Topics: elixir, liveview, phoenix, phoenix-framework, phoenix-liveview, tailwindcss, webhook, webhook-receiver
- Language: Elixir
- Homepage:
- Size: 948 KB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-elixir - Harpoon - A webhook receiver/inspector app, made using Phoenix and LiveView, it's basically a simplified version of [webhook.site](htts://webhook.site). (Applications)
README
# Harpoon
A simplified version of a tool similar to webhook.site, built with Elixir and Phoenix LiveView.
This tool allows users to easily inspect HTTP requests in real-time.
## just run it
```
docker run -p 4000:4000 aschiavon/harpoon
```## Table of Contents
- [Introduction](#introduction)
- [Features](#features)
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Usage](#usage)## Introduction
This is a simple tool built using Elixir and Phoenix LiveView, allowing users to create temporary endpoints to inspect and monitor HTTP requests.
The tool is intended for testing, debugging, and monitoring webhooks, APIs, and other HTTP requests in real-time.## Features
- Create temporary endpoints for testing and monitoring HTTP requests.
- Inspect HTTP requests in real-time using Phoenix LiveView.
- Store request data in a Sqlite database for easy analysis and setup.
- Lightweight and easy to use.## Prerequisites
### Docker Version
- Docker
- Docker Compose### Local Version
- Elixir
- Erlang
- Sqlite## Installation
To install Elixir/Erlang we do recommend using [asdf](https://asdf-vm.com/).
After installing asdf, you can run those following commands to install Elixir/Erlang:
```
# enable elixir/erlang plugins on asdf
asdf plugin add elixir
asdf plugin add erlang# clone the repo
git clone https://github.com/aschiavon91/harpoon.git && cd harpoon# install version from '.tool-versions' file
asdf install
```### Dev setup
```bash
mv .example.env.local .env.localmix setup
```or using [just](https://github.com/casey/just)
```bash
just start_dev
```or using [just](https://github.com/casey/just)
```
just start_prod
```### Environment Variables
and the respective default value
```
PHX_HOST="0.0.0.0" # you may want to change this to your respective domain, if its running behind a reverse proxy
DATABASE_FILE="$HOME/.harpoon/harpoon_prod.sqlite"
SECRET_KEY_BASE=""
PORT="4000"
```## Usage
Browser to `http://localhost:4000/` and you should be redirected to `http://localhost:4000/`.
Then, you can start making HTTP requests to `http://.localhost:4000/`, and you should start seeing the requests in the dashboard.