# React Custom File Upload 📁

A modern, customizable file upload component for React applications with progress tracking and drag-n-drop support.

## Features ✨

- 🚀 Drag and drop file upload
- 📊 Real-time upload progress tracking
- 🎨 Customizable UI with Tailwind CSS
- ⌨️ Full TypeScript support
- 🔄 Context API for state management
- 📱 Responsive design
- ⚡ Optimized performance
- 🎯 Multiple file support

## Tech Stack 🛠

- React 18
- TypeScript
- Tailwind CSS
- Vite
- React Dropzone
- Context API

## Getting Started 🚀

1. Clone the repository:
```bash
git clone https://github.com/sankarkumark34/react-custom-fileUpload.git
```

2. Install dependencies:
```bash
npm install
```

3. Run development server:
```bash
npm run dev
```

4. Build for production:
```bash
npm run build
```

## Usage 💻

```tsx
import { FileUploadProvider, FileUploader } from './components';

function App() {
  return (
    <FileUploadProvider>
      <div className="min-h-screen flex items-center justify-center">
        <FileUploader />
      </div>
    </FileUploadProvider>
  );
}
```

## Contributing 🤝

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## License 📄

Distributed under the MIT License. See `LICENSE` for more information.

## Contact 📬

Sankar - [@LinkedIn](https://www.linkedin.com/in/sankarkumarkathirvel/)

Project Link: [https://github.com/sankarkumark34/react-custom-fileUpload.git](https://github.com/sankarkumark34/react-custom-fileUpload.git)
