The only storage solution you need.
StoreIt is a full-stack cloud storage web application built with Next.js 15, Appwrite, and TypeScript. It lets users securely upload, organize, and manage files of any type — with a polished dashboard, real-time storage breakdowns, and a smooth, responsive UI across all devices.
- Authentication — Secure sign-up and sign-in with OTP-based email verification
- File Uploads — Upload documents, images, videos, audio, and more with a live upload preview
- File Management — Rename, share, download, and delete files via an intuitive action menu
- Dashboard — Visual storage chart with per-category usage summaries and recent file activity
- File Browsing — Browse files by type (Documents, Images, Media, Other) with sort and search
- File Sharing — Share files with other users directly from the app
- Responsive Design — Fully optimized for desktop and mobile, including PWA support
- Skeleton Loaders — Smooth loading states for every page and component
| Layer | Technology |
|---|---|
| Framework | Next.js 15 (App Router) |
| Language | TypeScript |
| Backend / Storage | Appwrite |
| Styling | Tailwind CSS |
| UI Components | shadcn/ui |
| Charts | Recharts |
| Font | Poppins (Google Fonts) |
app/
├── (auth)/ # Sign-in and sign-up pages
├── (root)/ # Main app layout (dashboard, file type pages)
│ ├── page.tsx # Dashboard
│ └── [type]/ # Dynamic file category pages
components/ # Reusable UI components
lib/
├── actions/ # Server actions (file & user operations)
└── utils.ts # Utility helpers
- Node.js 18+
- An Appwrite project (Cloud or self-hosted)
# Clone the repository
git clone https://github.com/your-username/storeit.git
cd storeit
# Install dependencies
npm installCreate a .env.local file in the root of the project:
NEXT_PUBLIC_APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1
NEXT_PUBLIC_APPWRITE_PROJECT=your_project_id
NEXT_PUBLIC_APPWRITE_DATABASE=your_database_id
NEXT_PUBLIC_APPWRITE_USERS_COLLECTION=your_users_collection_id
NEXT_PUBLIC_APPWRITE_FILES_COLLECTION=your_files_collection_id
NEXT_PUBLIC_APPWRITE_BUCKET=your_bucket_id
NEXT_APPWRITE_KEY=your_appwrite_api_keynpm run devOpen http://localhost:3000 in your browser.
StoreIt is configured as a Progressive Web App and can be installed on mobile devices and desktops for a native-like experience.
This project is open source and available under the MIT License.