TypeIt

~12kb min / ~4kb gzipped

The most versatile typing animation — cursor movement, input typing, and fluent chaining.


01

See It in Action

TypeIt's signature fluent API — type text, pause, delete, and retype with a blinking cursor.

Preview

02

What is TypeIt?

TypeIt is the most versatile JavaScript typewriter effect library. Beyond basic typing, it supports cursor movement (go back and edit text), form input typing, fluent chaining, and HTML rendering — making it the go-to for polished typing animations.

Created by Alex MacArthur, TypeIt uses a fluent API where you chain commands like .type("Hello").pause(500).delete(5).type("World"). Its standout feature is the companion input mode, which types into actual form fields — useful for onboarding demos. Note: TypeIt requires a commercial license ($19 one-time) for paid projects; it's free for open-source and personal use.

⌨️
Fluent Chainable API
Chain .type(), .delete(), .pause(), .move(), and more in a fluent, readable syntax. Build complex sequences with ease.
🎭
Companion Input Mode
Type into form inputs and textareas, not just div elements. Unique feature for form demos and onboarding flows.
🔄
Cursor Movement
Move the cursor backward and forward to edit previously typed text — simulating real human editing behavior.
⏱️
Realistic Timing
Randomized delays between keystrokes create natural-looking typing. Fine-tune speed, deleteSpeed, and per-character delays.
🎨
HTML Support
Type HTML elements including bold, italic, colored text, and other inline elements with proper rendering.

03

When to Use TypeIt

Use when
Hero section typing animations on landing pages
Interactive onboarding with typing into form fields
Code typing demonstrations and tutorials
Chatbot-style message reveal effects
Portfolio and resume hero text cycling
Product demos simulating user input
Avoid when
Large-scale text animations — TypeIt is designed for short typing effects, not paragraph-level animation
Projects on a strict budget — TypeIt requires a commercial license for paid projects ($19+)
When you need only the simplest typewriter — Typed.js is free and simpler for basic use cases
Accessibility-critical interfaces — typing animations can be disorienting for some users

04

How TypeIt Compares

TypeIt vs Typed.js

TypeIt has a richer API (cursor movement, input typing, fluent chaining). Typed.js is free and simpler. Choose TypeIt for advanced effects, Typed.js for basic typewriters.

TypeIt wins at
Cursor movement, form input typing, fluent API, HTML support, more control
Typed.js wins at
Free for all uses, simpler API, lighter bundle, larger community
TypeIt vs GSAP SplitText

Different tools. TypeIt simulates typing character-by-character. GSAP SplitText splits existing text for animation effects (fade, slide, stagger).

TypeIt wins at
True typewriter simulation, cursor movement, delete/retype, input mode
GSAP SplitText wins at
Part of GSAP ecosystem, per-character animation, timeline integration
TypeIt vs CSS Animations

CSS can create a basic typewriter with steps() and ch units, but it's fragile and limited to fixed-width fonts. TypeIt handles all fonts and complex sequences.

TypeIt wins at
Any font, dynamic content, cursor movement, delete, input mode, sequences
CSS Animations wins at
Zero dependencies, no JavaScript, simpler for single fixed strings

05

Get Started with TypeIt

Terminal
npm install typeit
Terminal
yarn add typeit
HTML
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/index.umd.js"></script>
Quick Start
import TypeIt from "typeit";

// Basic typing
new TypeIt("#element", {
  speed: 75,
  waitUntilVisible: true
})
  .type("Hello, I'm TypeIt!")
  .pause(800)
  .delete(7)
  .type("a typing library.")
  .pause(500)
  .type(" ✨")
  .go();

// Typing into a form input
new TypeIt("#search-input", {
  speed: 50
})
  .type("How to use TypeIt...")
  .go();

06

Related Libraries