---
title: "Availability animated icon"
description: "Availability animated icon (Scheduling & time tools). The open slot is pulled out to be picked. Light: the free slot slides out to the right, hits its stop, recoils a little and settles, and stays open; the two busy slots never move. Strong: the slot is pushed in first, then pulled out hard to its stop and settles in two beats. The reverse pushes it home against its stop."
canonical: https://generativeicons.com/icons/availability/
---

# Availability animated icon

The open slot is pulled out to be picked. Light: the free slot slides out to the right, hits its stop, recoils a little and settles, and stays open; the two busy slots never move. Strong: the slot is pushed in first, then pulled out hard to its stop and settles in two beats. The reverse pushes it home against its stop.

- Id: `availability`
- Category: Scheduling & time tools
- Search terms: free slots, free time, open slots, time slots, available, free busy, appointment slots, open times, book a slot
- Two states: closed to open, played forward and back
- Styles: outline, solid, duotone; outline weights 1.5, 2, 2.5 (any from 1 to 3); motion light or strong
- File: https://generativeicons.com/assets/availability.lottie (dotLottie, 5536 bytes, sha256 e828b5dc93bbb3140017c847e30de62133a4e9148b494614196b4cdb71dd43e3)
- License: MIT

## Install

```sh
npm install @lottiefiles/generative-icons-runtime
npx generative-icons init
npx generative-icons add availability
```

## React

```tsx
// npm install @lottiefiles/generative-icons-react
'use client';
import { AnimatedIcon } from '@lottiefiles/generative-icons-react';
import icon, { src } from './generative-icons/availability.mjs';

export function AvailabilityIcon() {
  return <AnimatedIcon icon={icon} src={src} size={32}
    color="#ffffff" variant="outline" weight={2}
    motion="light" theme="dark" />;
}
```

## JavaScript

```js
import { createIcon } from '@lottiefiles/generative-icons-runtime';
import icon, { src } from './generative-icons/availability.mjs';

const handle = await createIcon(canvas, {
  icon, src,
  color: '#ffffff', style: 'outline', weight: 2,
  motion: 'light', theme: 'dark'
});
button.addEventListener('click', () => handle.play());
// On removal: handle.destroy();
```

More: https://generativeicons.com/icons/availability/ · https://generativeicons.com/api/icons/availability
