File Uploader

screenshot of File Uploader
nextjs
react
tailwind
geist-ui
shadcn-ui

File uploader built with shadcn/ui and Radix UI.

Overview

The File Uploader is a file uploading component that is built using shadnc/ui and react-dropzone. It is created with create-t3-app and utilizes Next.js framework, Tailwind CSS for styling, shadcn/ui for UI components, react-dropzone for Drag-and-Drop functionality, and Zod for validation. This File Uploader provides features like a reusable useFileUpload hook, Drag-and-Drop file upload with progress bar, integration with react-hook-form and shadnc/ui form components, and a file dialog demo.

Features

  • Reusable useFileUpload hook: for uploading files with uploadthing
  • Drag and drop file upload component: with progress bar
  • React-hook-form integration: with shadnc/ui form components
  • File dialog demo: with the ability to add and remove files from the scrollable list

Summary

The File Uploader is a versatile tool for file uploading, offering features such as reusable hooks, drag-and-drop functionality, integration with form components, and a file dialog demo. Installation is straightforward, involving cloning the repository, installing dependencies, updating environment variables, and starting the development server. Additionally, deployment guides for Vercel, Netlify, and Docker are available for deploying this file uploader to various platforms.

nextjs
Next.js

Next.js is a React-based web framework that enables server-side rendering, static site generation, and other powerful features for building modern web applications.

react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

tailwind
Tailwind

Tailwind CSS is a utility-first CSS framework that provides pre-defined classes for building responsive and customizable user interfaces.

geist-ui
Geist UI

Geist UI is a modern, minimalist React component library inspired by Vercel's design language. It provides clean, elegant components with a focus on simplicity and developer experience, perfect for building modern web applications.

shadcn-ui
Shadcn UI

Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source.

postcss
Postcss

PostCSS is a popular open-source tool that enables web developers to transform CSS styles with JavaScript plugins. It allows for efficient processing of CSS styles, from applying vendor prefixes to improving browser compatibility, ultimately resulting in cleaner, faster, and more maintainable code.

react-hook-form
React Hook Form

React Hook Form is a performant, flexible, and extensible form library for React with easy validation. It reduces re-renders and improves performance by using uncontrolled components and native HTML validation, making form handling simple and efficient.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.

zod
Zod

Zod is a TypeScript-first schema declaration and validation library. It allows you to define schemas that can validate data at runtime while providing excellent TypeScript inference, making it perfect for API validation, form validation, and type-safe data handling.