New!
Super Fun!

PrankJS

Add a splash of mischief to your web applications with delightful, interactive pranks 🎉

GitHub Repo npm Package

Interactive Demo

Visual Pranks

Interactive Pranks

Element Manipulation Pranks

Notification Pranks

Scenarios combine multiple pranks for a more immersive experience. Click any scenario below to see it in action.

Demo Disruption

A simple demonstration that combines multiple pranks for quick testing.

Included Pranks:

  • flipScreen()
  • fakeError()
  • randomTyping()

Office Prank

Designed for office environments, gradually applying pranks that escalate in noticeable effect.

Included Pranks:

  • mouseTrail()
  • shakeElement('button', '.header', 'input')
  • jumbleText()
  • randomFloatingObjects()

Meeting Disruptor

Perfect for creating simulated technical issues during presentations.

Included Pranks:

  • fakeError('Critical system update required')
  • keyboardLock()
  • popupPrank()
  • randomSounds() (optional)

Visual Chaos

Combines various visual effects for maximum impact and screen disruption.

Included Pranks:

  • invertColors(3000, 0, 1)
  • randomEmoji()
  • randomBlur()
  • flipScreen()
  • mirrorEffect()

April Fools

A comprehensive April 1st prank sequence with multiple effects over time.

Included Pranks:

  • fakeLoadingScreen()
  • gravitySwitch()
  • disappearingElements()
  • randomRedirect(['https://www.youtube.com/watch?v=dQw4w9WgXcQ', ...])
  • confettiExplosion()

Gradual Escalation

Starts with subtle pranks that gradually escalate over time for maximum surprise.

Included Pranks:

  • mouseTrail()
  • randomTyping()
  • shakeElement('button', 'a', 'input')
  • floatingObject(...) & randomSounds()
  • flipScreen(), fakeError(), confettiExplosion()

Features

20+ Ready-Made Pranks

A comprehensive collection of web-based pranks from subtle to obvious, all ready to use.

Pre-Built Scenarios

Combination pranks designed for specific situations like April Fools' Day or office environments.

Modular Design

Import only the pranks you need, keeping your bundle size small and efficient.

TypeScript Support

Fully typed API for better developer experience and code completion.

Browser Compatible

Works in all modern browsers with graceful fallbacks.

Customizable

Most pranks accept parameters to customize their behavior and appearance.

Installation & Usage