Skip to content

svar-widgets/filemanager

Repository files navigation

SVAR Svelte File Manager | File Explorer

🌐 Website • 💡 Getting Started • 👀 Demos

npm License npm downloads

SVAR File Manager is a flexible file explorer component for Svelte apps. It offers a familiar interface for browsing, organizing, and previewing files. Integrate it with any backend, whether you're using local storage, databases, or cloud services.

SVAR File Manager for Svelte - UI

Svelte 4 and Svelte 5 versions

There are two versions of the library: the 1.x version, designed to work with Svelte 4, and the 2.x version, created for Svelte 5. Please note that the 2.x version is in beta and may contain some instabilities.

To use the SVAR FileManager beta for Svelte 5, install it as follows:

npm install wx-svelte-filemanager

To use the SVAR FileManager for Svelte 4:

npm install [email protected]

✨ Key features:

  • Basic file operations: create, delete, copy, rename, cut, paste
  • Download and upload files
  • Files tree view
  • List and tiles views
  • File preview pane with file information (file size, type, modified date, etc)
  • Split view to manage files between different locations
  • Built-in search box
  • Context menu and toolbar
  • Keyboard navigation
  • Used storage info

⚒️ How to Use

To use the widget, simply import the package and include the component in your Svelte file:

<script>
	import { Filemanager } from "wx-svelte-filemanager";

	const data = [
		{
			id: "/Code",
			date: new Date(2023, 11, 2, 17, 25),
			type: "folder",
		},
	];
	const drive = {
		used: 15200000000,
		total: 50000000000,
	};
</script>

<Filemanager {data} {drive} />

💻 How to Modify

Typically, you don't need to modify the code. However, if you wish to do so, follow these steps:

  1. Run yarn to install dependencies. Note that this project is a monorepo using yarn workspaces, so npm will not work
  2. Start the project in development mode with yarn start

✅ Run Tests

To run the test:

  1. Start the test examples with:
    yarn start:tests
  2. In a separate console, run the end-to-end tests with:
    yarn test:cypress

💬 Need Help?

Post an Issue or use our community forum.