Skip to content

projectdiscovery/interactsh-web

Interactsh Web Client

A Next.js-based web interface for Interactsh

Getting Started

Prerequisites

  • Node.js 20+ (required for React 19)
  • npm, yarn, or pnpm

Installation

  1. Clone the repository:
git clone https://github.com/projectdiscovery/interactsh-web.git
cd interactsh-web
  1. Install dependencies:
npm install
# or
yarn install
  1. Run the development server:
npm run dev
# or
yarn dev
  1. Open http://localhost:3000 in your browser.

Building for Production

npm run build
npm start

Docker

Build and run using Docker:

docker build -t interactsh-web .
docker run -p 3000:3000 interactsh-web

Environment Variables

Create a .env.local file in the root directory to customize the configuration:

Variable Description Default
NEXT_PUBLIC_HOST Default Interactsh server host oast.fun
NEXT_PUBLIC_TOKEN Authentication token (optional) -
NEXT_PUBLIC_CIDL Correlation ID Length 20
NEXT_PUBLIC_CIDN Correlation ID Nonce Length 13

Tech Stack

  • Framework: Next.js 16 with App Router
  • React: React 19.1.0
  • Styling: SCSS, Tailwind CSS, styled-components
  • Language: TypeScript
  • UI Components: Headless UI v2
  • Cryptography: node-rsa, crypto-browserify
  • Theme Management: next-themes

Project Structure

src/
├── app/                    # Next.js App Router pages
│   ├── page.tsx           # Main application page
│   ├── layout.tsx         # Root layout
│   ├── styles.scss        # Page styles
│   ├── terms/             # Terms page
│   └── components/        # Page-specific components
├── components/            # Reusable UI components
│   ├── appLoader/
│   ├── customHost/
│   ├── detailedRequest/
│   ├── header/
│   ├── icons/             # SVG icon components
│   ├── notificationsPopup/
│   ├── requestsTable/
│   ├── resetPopup/
│   ├── tabSwitcher/
│   └── toggleBtn/
├── lib/                   # Utility functions and types
│   ├── index.ts           # Core functionality
│   ├── localStorage/      # Local storage management
│   ├── notify/            # Notification services
│   ├── registry.tsx       # styled-components registry
│   └── types/             # TypeScript type definitions
├── helpers/               # Fallback loaders
├── styles/                # Global styles
└── theme.ts               # Theme configuration

Features

  • Real-time interaction monitoring
  • Multiple protocol support (HTTP, DNS, SMTP)
  • Tab management for multiple sessions
  • Request/Response detailed view
  • Notification integrations (Telegram, Slack, Discord)
  • Custom host configuration
  • Data export functionality
  • Theme selection (Dark, Synth, Blue)

License

MIT License - see LICENSE.md for details.

Credits

About

Web dashboard for Interactsh client

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published