Rapi::Fs

Instant file browser using


Ajax navigation trees

Files and Directories rendered in responsive/interactive ExtJS TreePanel



RESTful URLs, tabbed content panels

View details of Files and Directories in individual tabs, including inline content preview

Features


  • Written in Perl and RapidApp
  • Pure Ajax, single-page app
  • Tabbed interface with RESTful navigation
  • Recursive search
  • Right-click/context menu
  • Supports regular files, directories, symlinks
  • Handles hidden files and unreadable files
  • Understands MIME types and Unicode
  • Intelligent, inline file viewer
  • Syntax highlighting code files
  • Flexible and easy to use:
    • As a dedicated app
    • Plack/PSGI component
    • RapidApp Module
    • Command-line utility with rapi-fs.pl
  • Extensible/customizable classes:

Rapi::Fs is a Plack-compatible file browser application written using RapidApp. It generates a nice-looking dynamic web interface to browse and view arbitrary files and directories for the configured "mounts" using a standard, split-panel tree layout.

This module was written over the course of several days in order to showcase some of the functionality of the RapidApp toolkit/framework, particularly regarding Tree modules, and provide a reference implementation.

For complete API documentation, see the module on CPAN:
metacpan.org/pod/Rapi::Fs

Live Demo


Example, Running Application (PSGI):




This example app is configured with three directory mounts, including the application's own home directory.

 Launch Demo!


Code is the actual running psgi file (being served by the application itself):   rapi-fs-demo.psgi





As embedded componenets


With tabbed nagivation

Plain tree

» double-click to download  

See Direct Rendering URLs in the RapidApp Manual for more info on embedding Modules in iframes, as show above.

Download & Installation


Source code & Docs

CPAN

metacpan.org/pod/Rapi::Fs

GitHub

github.com/vanstyn/Rapi-Fs

RapidApp Project Homepage

www.rapidapp.info

Command-line install



  # Install from CPAN:
  cpanm Rapi::Fs
  
  # Launch app with built-in web server:
  rapi-fs.pl /path/to/files

Written by Henry Van Styn