whatisgithub

What is protomultiselect?

garrytan/protomultiselect — explained in plain English

Analysis updated 2026-07-29 · repo last pushed 2012-07-18

19JavaScriptAudience · developerComplexity · 2/5DormantSetup · moderate

In one sentence

A JavaScript component that adds a Facebook-style type-ahead multi-select input to web forms, where users type to search a list and pick items that appear as removable tags. Built on the older Prototype JS framework.

Mindmap

mindmap
  root((repo))
    What it does
      Type-ahead dropdown
      Removable tag pills
      Keyboard-driven selection
    Tech stack
      JavaScript
      Prototype framework
      AJAX support
    Use cases
      Invite friends forms
      Blog post tagging
      Multi-item associations
    Configuration
      Allow new values
      Prevent duplicates
      Custom callbacks
    Audience
      Legacy app maintainers
      Web form builders

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add a Facebook-style friend invite field to an event registration form.

USE CASE 2

Let blog authors type to add and remove tags on a post.

USE CASE 3

Build a search filter where users pick multiple categories from a suggestion list.

USE CASE 4

Enhance a legacy Prototype-based app with a multi-select tagging input.

What is it built with?

JavaScriptPrototype

How does it compare?

garrytan/protomultiselectaburousan/typsteditorborelchu/menhera-loop
Stars191919
LanguageJavaScriptJavaScriptJavaScript
Last pushed2012-07-18
MaintenanceDormant
Setup difficultymoderatemoderateeasy
Complexity2/53/52/5
Audiencedeveloperresearcherdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires the Prototype JavaScript framework version 1.6.0 or higher, which must be included separately in your project.

No license information is provided in the repository, so usage rights are unclear.

So what is it?

Proto!MultiSelect is a JavaScript component that recreates the "type-ahead" multi-select input field popularized by Facebook. You know the pattern: you start typing a name, a dropdown of suggestions appears, and you pick one to add it as a little tag inside the text box. It lets users select multiple items from a list quickly without leaving their keyboard. Under the hood, it works by listening to what a user types and matching it against a list of options you provide, either upfront or fetched from a server. As the user types, matching suggestions filter down in a dropdown. When they pick one, it becomes a removable tag inside the input area. It's built on Prototype, an older JavaScript framework similar to jQuery, and requires version 1.6.0 or higher. This is useful for anyone building a web form where users need to associate multiple things with a single entry. For example, if you are building an event app and need a field where users invite friends, or a blog platform where users add tags to a post, this provides that interface. The component is highly configurable: you can let users create brand new values on the fly (great for tagging), prevent duplicates, or configure what happens when items are added or removed via custom callback functions. The project has a long changelog showing years of incremental improvements from various contributors, adding features like AJAX support, better cross-browser compatibility, and HTML sanitization. One notable tradeoff is its reliance on the Prototype framework. While once very popular, Prototype has largely been overshadowed by modern JavaScript tools, meaning this code is best suited for maintaining older applications rather than starting new ones.

Copy-paste prompts

Prompt 1
I have a web form using the Prototype JavaScript framework. Help me integrate Proto!MultiSelect so users can type a name, see matching suggestions in a dropdown, and add selected names as removable tags inside the input field.
Prompt 2
I want to use Proto!MultiSelect for a tagging field where users can create brand-new tags that don't already exist in the suggestion list. Show me how to configure it to allow new values and prevent duplicates.
Prompt 3
Help me set up Proto!MultiSelect to fetch suggestions from a server via AJAX as the user types, and fire a custom callback function each time a tag is added or removed.
Prompt 4
My legacy app uses Prototype JS 1.6.0. Walk me through adding Proto!MultiSelect to a form field, including what HTML markup and options I need to get a working type-ahead multi-select.

Frequently asked questions

What is protomultiselect?

A JavaScript component that adds a Facebook-style type-ahead multi-select input to web forms, where users type to search a list and pick items that appear as removable tags. Built on the older Prototype JS framework.

What language is protomultiselect written in?

Mainly JavaScript. The stack also includes JavaScript, Prototype.

Is protomultiselect actively maintained?

Dormant — no commits in 2+ years (last push 2012-07-18).

What license does protomultiselect use?

No license information is provided in the repository, so usage rights are unclear.

How hard is protomultiselect to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is protomultiselect for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.