npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@constructor-io/constructorio-ui-autocomplete

v1.26.0

Published

Constructor.io Autocomplete UI library for web applications

Readme

Read The Docs

minzipped size NPM Version MIT licensed

📌 Table of Contents

Features

  • 🔌 Easy Integration – Quickly integrate with your app as a plug-and-play React component
  • ⚡ Lightweight & Fast – Tiny bundle size, optimized for speed
  • 🎨 Customizable UI – With minmal styles, and supports for custom markup
  • ⌨️ Keyboard Navigation – Fully supports accessible keyboard naviagation
  • ♿ Accessible (a11y) – Built-in ARIA support for screen readers
  • 🛡 Written in TypeScript with type safety

React

⚡ Installation & Quick Start

Install the library

npm i @constructor-io/constructorio-ui-autocomplete

Import and use the CioAutocomplete component

import { CioAutocomplete } from '@constructor-io/constructorio-ui-autocomplete';
import '@constructor-io/constructorio-ui-autocomplete/styles.css';

function YourComponent() {
  return (
    <div>
      <CioAutocomplete
        apiKey="key_M57QS8SMPdLdLx4x"
        onSubmit={(e) => {console.log(e)}}
    </div>
  );

Shopify

⚡ Installation & Quick Start

The Constructor autocomplete component is available as part of the Constructor.io Shopify App

After installing the app, you can use the Constructor autocomplete component by clicking 'Add Section' in your theme editor and adding the Constructor autocomplete liquid component

installation gif

For more in depth instructions, check out the Shopify documentation.

Bundle (Vanilla JS)

This is a framework agnostic method that can be used in any JavaScript project. The CioAutocomplete function provides a simple interface to inject an entire Autocomplete UI into the provided selector. In addition to Autocomplete component props, this function also accepts a selector and includeCSS.

⚡ Installation & Quick Start

Install the library

npm i @constructor-io/constructorio-ui-autocomplete

Import and use the CioAutocomplete component

import CioAutocomplete from '@constructor-io/constructorio-ui-autocomplete/constructorio-ui-autocomplete-bundled';

CioAutocomplete({
  selector: '#autocomplete-container',
  includeCSS: true, // Include the default CSS styles. Defaults to true.
  apiKey: 'key_M57QS8SMPdLdLx4x',
  onSubmit: (submitEvent) => console.dir(submitEvent),
  // ... additional arguments
});
</script>

💡 Code Examples

Ready-to-use, copy-paste examples with explanations.

🔹 For more examples check the full examples

🎨 Customization

CSS styles are not imported by default. Add this to your code to import basic styles

import '@constructor-io/constructorio-ui-autocomplete/styles.css';

All styles are scoped under .cio-autocomplete. You can extend them by targeting that selector.

/* Custom Style Sheet */
.cio-autocomplete .cio-submit-btn {
  border-radius: 10px;
  border: 1px solid red;
}

If you'd like to override or extend the base className, you can do so with the autocompleteClassName argument

import { CioAutocomplete } from '@constructor-io/constructorio-ui-autocomplete';
import '@constructor-io/constructorio-ui-autocomplete/styles.css';

function YourComponent() {
  return (
    <div>
      <CioAutocomplete
        apiKey="key_M57QS8SMPdLdLx4x"
        onSubmit={(e) => { console.log(e)}}
        autocompleteClassName="cio-autocomplete custom-autocomplete-container"
      />
    </div>
  );

Then you can modify styles like so

/* Custom Style Sheet */
.cio-autocomplete.custom-autocomplete-styles .cio-input {
  font-weight: bold;
}

🚀 Advanced Features

🔹 For more advanced use cases check the full documentation

🛠 Troubleshooting

Common issues and solutions.

💬 Need help? Join our GitHub Discussions

📖 API Reference

  • Full API docs: Click here

🔗 Complementary Resources

🤝 Contributing

  1. Fork the repo & create a new branch.
  2. Run npm install to install dependencies.
  3. After making the desired changes, run npm run tests && npm run lint locally.
  4. Submit a PR for review.

📜 License

MIT License

Copyright (c) 2022-present Constructor.io Corporation