storage_fs 0.2.0 copy "storage_fs: ^0.2.0" to clipboard
storage_fs: ^0.2.0 copied to clipboard

A comprehensive filesystem abstraction for Dart, inspired by Laravel's Storage facade. Supports both local and cloud storage with a unified API.

example/example.dart

import 'package:storage_fs/storage_fs.dart';
import 'dart:io';

/// Example demonstrating the storage_fs package usage.
///
/// This example shows how to:
/// - Initialize the storage system
/// - Perform basic file operations (write, read, delete)
/// - Check file existence
/// - Work with directories
void main() async {
  // Initialize storage with configuration
  Storage.initializeFromMap({
    'default': 'local',
    'disks': {
      'local': {
        'driver': 'local',
        'root': '${Directory.systemTemp.path}/storage_example',
      },
    },
  });

  print('=== Storage Example ===\n');

  // Write a file
  print('1. Writing file...');
  await Storage.put('example.txt', 'Hello from Storage!');

  // Read a file
  print('2. Reading file...');
  final content = await Storage.get('example.txt');
  print('   Content: $content');

  // Check if file exists
  print('3. Checking file existence...');
  final exists = await Storage.exists('example.txt');
  print('   File exists: $exists');

  // Get file size
  print('4. Getting file size...');
  final size = await Storage.size('example.txt');
  print('   Size: $size bytes');

  // Create a directory
  print('5. Creating directory...');
  await Storage.makeDirectory('uploads/images');
  print('   Directory created');

  // Write file to directory
  print('6. Writing file to directory...');
  await Storage.put('uploads/images/photo.txt', 'Sample image data');

  // List files
  print('7. Listing files...');
  final files = await Storage.allFiles('uploads');
  print('   Files: $files');

  // Copy file
  print('8. Copying file...');
  await Storage.copy('example.txt', 'example_copy.txt');
  print('   File copied');

  // Delete files
  print('9. Cleaning up...');
  await Storage.delete('example.txt');
  await Storage.delete('example_copy.txt');
  await Storage.deleteDirectory('uploads');
  print('   Cleanup complete');

  print('\n=== Example Complete ===');
}
1
likes
160
points
556
downloads

Documentation

API reference

Publisher

verified publisherglenfordwilliams.com

Weekly Downloads

A comprehensive filesystem abstraction for Dart, inspired by Laravel's Storage facade. Supports both local and cloud storage with a unified API.

Repository (GitHub)
View/report issues

Topics

#filesystem #storage #abstraction #cloud-storage

Funding

Consider supporting this project:

www.buymeacoffee.com

License

MIT (license)

Dependencies

convert, crypto, file, file_cloud, meta, mime, path

More

Packages that depend on storage_fs