An open API service indexing awesome lists of open source software.

https://github.com/lilingxi01/ams-date-picker

(WIP) Ams Date Picker - A modern, magical, and unstyled date picker for React. We have your favorite Time Machine and Input Supercharge out-of-box.
https://github.com/lilingxi01/ams-date-picker

component date date-picker date-selector daylight-savings modern react

Last synced: about 1 year ago
JSON representation

(WIP) Ams Date Picker - A modern, magical, and unstyled date picker for React. We have your favorite Time Machine and Input Supercharge out-of-box.

Awesome Lists containing this project

README

          

![AmsDatePicker Cover](https://imagedelivery.net/Dr98IMl5gQ9tPkFM5JRcng/d6bffcf4-bee4-4235-de19-b68a0be89800/HD)

![WIP](https://img.shields.io/badge/Headless-0.0.5-blue.svg?style=flat-square) ![WIP](https://img.shields.io/badge/Styled-Work%20in%20progress-red.svg?style=flat-square)

# Get Started

Ams Date Picker (in code known as `AmsDatePicker`) is a powerful date picker component for React. It not only provides a modern look of date/time picker, but also provides a bunch of powerful features to boost the user experience while inputting a date/time.

# WIP ([Roadmap](https://github.com/lilingxi01/ams-date-picker/issues/2))

This project is still **in development**. It is not yet ready for use. We will release it as soon as it is ready. Stay tuned and check back soon!

# Installation

For `npm` user:
```bash
npm install @ams-js/headless
```

For `yarn` user:
```bash
yarn add @ams-js/headless
```

For `pnpm` user:
```bash
pnpm add @ams-js/headless
```

# Usage

For now, we only have Input component available. In the future, we will have Date Selector component and more plugins, which will also be used within ``.

### Single Date Input (Headless)

```tsx
import * as DatePicker from '@ams-js/headless';

export const MyDatePicker = () => {
const [dateState, setDateState] = useState(null);
return (
console.error(error)}
dateOptions={{ ... }} // You can customize as JavaScript Date options.
>
prop is allowed */}
/>

);
};
```

### Range Date Input (Headless)

```tsx
import * as DatePicker from '@ams-js/headless';

export const MyRangeDatePicker = () => {
const [firstDate, setFirstDate] = useState(null);
const [secondDate, setSecondDate] = useState(null);
return (


console.error(error)}
dateOptions={{ ... }} // You can customize as JavaScript Date options.
>
prop is allowed */}
/>

console.error(error)}
dateOptions={{ ... }} // You can customize as JavaScript Date options.
>
prop is allowed */}
/>


);
};
```

# Design Prototype

![Date Picker Prototype](https://user-images.githubusercontent.com/36816148/169880375-a60d1198-dd6f-4add-ac62-b86d6cc41918.png)

![Date Selector Prototype](https://user-images.githubusercontent.com/36816148/169880433-96701a89-691f-413f-b954-404882d28dbf.png)

![Date Conflict Resolver](https://user-images.githubusercontent.com/36816148/169919720-1828b8d7-0862-4868-abb9-2a89a2170c33.png)

![Date Picker User Manual](https://user-images.githubusercontent.com/36816148/170132516-99c20992-d004-4a4e-b420-b1cfa76e6ca7.png)

![Dark Mode Support](https://user-images.githubusercontent.com/36816148/172277845-26b2d8be-733f-4c50-8655-f4496bcd2f7b.png)

# FAQ

## Why is this project called `AmsDatePicker`?

This project is called `AmsDatePicker` because it was born in Amherst, MA. The original group members are all coming from University of Massachusetts Amherst in [Indigo Development](https://github.com/mbucc/320-S22-Track2/wiki/Indigo).

# Contributors ✨



Lingxi Li

🎨 💻 ⚠️

limbo-yan

💻

Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key))!

# Credits

It was originated in project [here](https://github.com/mbucc/320-S22-Track2), but it was now separated and moved to here (keeping all old contributions from Git).