Skip to content

sky7sea/chromeos-filesystems

 
 

Repository files navigation

Chrome OS Filesystem Providers

Build Status Code Climate

This repository contains various filesystem providers for Chrome OS. They offer a way to access files stored on remote servers through the Files app, from a variety of sources. There are two categories of provider:

  • Protocol providers. These connect to arbitrary servers over a particular protocol, like WebDAV or FTP.
  • Cloud providers. These connect to particular accounts on various proprietary cloud storage services like Dropbox and Amazon S3.

Providers that mount archive files like ZIP and RAR as file systems are considered to be separate category again and are not included in this repository: they are part of core Chromium.

Current

Work has started on the following providers

  • WebDAV
    • Supports all read and write operations.
    • Authentication not supported at this time.
  • Amazon S3
    • Supports all read operations and all non-recursive write operations.
    • Authentication supported through access and secret key.
  • Dropbox

They can be found in their respective directories with this repository. Please refer to each provider's own readme for installation and usage instructions.

Planned

There are many more providers we would like to implement, including

  • SFTP
  • Google Cloud Storage
  • Samba
  • Git
  • Box

Setup

To work on any of these providers, you will need Git, Node.js, Google Chrome and Make installed. You should also install Grunt and Bower globally:

$ npm install -g grunt-cli bower

Then you can get the repository installed:

$ git clone https://github.com/google/chromeos-filesystems
$ cd chromeos-filesystems
$ bower install

Testing

All providers read the files needed by their unit tests from the server in the testserver directory. To start it:

$ cd testserver
$ npm install
$ node server.js &

Icons

The Photoshop project files for the various sizes of icon for each provider are contained in the psd directory in the provider's directory. You will need to install Photoshop or a PSD-compatible image editor to edit them. Rendered icons are stored in extension/icon.

It will then run indefinitely in the background on port 8000. This can be changed by modifying config.js.

Creating new providers

Please refer to the wiki page for instructions on how to create your own provider. Remember to follow the guidelines for contributing to this repository.

License

All providers are licensed under the BSD license. See the LICENSE file for details. All original source code is Copyright 2014 The Chromium Authors.

About

Additional file system providers for Chrome OS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 96.7%
  • HTML 2.6%
  • CSS 0.7%