a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee
The preferred way to report a bug or make a feature request is to create a new issue on GitHub!
( note: please don't use files from the src
folder for installation,
they need to be preprocessed to work correctly )
You'll find a preprocessed package, as well as detailed installation instructions on the project page.
( there are repositories of the latest releases and dev builds )
If you want to build h5ai yourself you need to install the build tool fQuery first:
> npm install -g fquery
This will install fQuery and its command line tool makejs
. Run makejs --help
to see if everything
worked fine.
To clone and build the project run the following commands.
You'll find a new directory build
including a fresh zipball.
> git clone git://github.com/lrsjng/h5ai.git
> cd h5ai
> makejs release
h5ai is provided under the terms of the MIT License.
It profits from these great projects: Faenza icon set (GPL), HTML5 ★ Boilerplate (MIT), jQuery (MIT), jQuery.filedrop (MIT), jQuery.fracs (MIT), jQuery.mousewheel (MIT), jQuery.qrcode (MIT), jQuery.scrollpanel (MIT), markdown-js (MIT), Modernizr (MIT/BSD), modulejs (MIT), Moment.js (MIT), spin.js (MIT), SyntaxHighlighter (MIT/GPL), Underscore.js (MIT)
( h5ai uses semantic versioning )
- removes
aai
mode! - adds smart browsing
- add line wrap and line highlighting (on hover) to text preview
- bug fix concerning API requests in PHP mode
- minor changes in responsive styles
- general changes h5ai directory layout and configuration
- splits configuration file (
config.json
) into filesoptions.json
,types.json
andlangs.json
- localization now in separate files
- adds auto-refresh
- adds drag'n'drop upload (PHP, experimental)
- adds file deletion (PHP, experimental)
- cleans and improves PHP code
- PHP no longer respects htaccess restrictions (so be careful)
- PHP ignore patterns might include paths now
- improves separation between aai and php mode
- improves performance in aai mode
- adds optional binary prefixes for file sizes
- improves filter: autofocus on keypress, clear on
ESC
- download packages now packaged relative to current folder
- download package name changable
- splits type
js
intojs
andjson
- prevents some errors with files > 2GB on 32bit OS
- adds max subfolder size in tree view
- adds ctrl-click file selection
- adds Piwik analytics extension
- temp download packages are now stored in the
cache
-folder and deleted as soon as possible - updates translations
- adds
he
translation by Tomer Cohen - updates 3rd party libs
- fixes misaligned image previews
- adds no JavaScript fallback to PHP version
- fixes duplicate tree entries and empty main views
- adds Google Analytics support (async)
- improves filter (now ignorecase, now only checks if chars in right order)
- adds keyboard support to image preview (space, enter, backspace, left, right, up, down, f, esc)
- adds text file preview and highlighting with SyntaxHighlighter (same keys as img preview)
- adds Markdown preview with markdown-js
- adds new type
markdown
- changes language code
gr
toel
- adds localization for filter placeholder
- adds
hu
translation by Rodolffo - updates to jQuery.qrcode 0.2
- updates to jQuery.scrollpanel 0.1
- updates to modulejs 0.2
- updates to Moment.js 1.7.0
- updates to Underscore.js 1.3.3
- adds image preview
- adds thumbnails for video and pdf
- adds support for lighttpd, nginx and cherokee and maybe other webservers with PHP
- adds folder size in PHP version via shell
du
- fixes some localization problems
- updates info page at
/_h5ai/
- switches to JSHint
- adds lots of config options
- changes in
config.js
andh5ai.htaccess
- fixes js problems in IE 7+8
- hides broken tree view in IE < 9, adds a message to the footer
- removes hash changes since they break logical browser history
- fixes thumbnail size for portrait images in icon view
- fixes problems with file type recognition
- adds an info page at
/_h5ai/
- sort order is preserved while browsing
- removes PHP error messages on thumbnail generation
- fixes PHP some problems with packed download
- adds support for tarred downloads
- changes crumb image for folders with an index file
- adds
index.php
to use h5ai in non-Apache environments - switches from Datejs to Moment.js
- adds underscore.js
- fixes mousewheel problems, updates jQuery.mousewheel to 3.0.6
- updates
lv
translation - adds
ro
translation by Jakob Cosoroabă - adds
ja
translation by metasta - adds
nb
translation by Sindre Sorhus - adds
sr
translation by vBm - adds
gr
translation by xhmikosr
- adds optional QRCode display
- adds optional filtering for displayed files and folders
- updates design
- improves zipped download
- adds support for zipped download of htaccess restricted files
- changes h5ai.htaccess
- custom headers/footers are now optional and disabled by default
- fixes problems with folder recognition in the JS version
- fixes include problems in PHP version
- fixes path problems on servers running on Windows in PHP version
- fixes broken links in custom headers/footers while zipped download enabled
- fixes problems with thumbnails for files with single or double quotes in filename
- improves url hashes
- updates year in
LICENSE.TXT
- updates es translation
- adds
zh-tw
translation by Yao Wei - updates
zh-cn
translation
- h5ai is now located in
_h5ai
to reduce collisions - switches from HTML5 Boilerplate reset to normalization
- adds some style changes for small devices
- configuration (options, types, translations) now via
config.js
- icons for JS version are now configured via
config.js
- sort order configuration changed
- sorting is now done without page reload
- adds
customHeader
andcustomFooter
toconfig.js
- supports restricted folders to some extent
- some style changes on tree and language menu
- fixes total file/folder count in status bar
- adds support for use with userdir (requires some manual changes)
- sorts translations in
options.js
- improves HTML head sections
- refactors JavaScript and PHP a lot
- improves/fixes file selection for zipped download
- fixes scrollbar and header/footer link issues (didn't work when zipped download enabled)
- adds support for ctrl-select
dateFormat
inoptions.js
changed, now affecting JS and PHP versiondateFormat
is localizable by adding it to a translation inoptions.js
- PHP version is now configurable via
php/config.php
(set custom doc root and other PHP related things) - image thumbs and zipped download is disabled by default now, but works fine if PHP is configured
- adds
it
translation by Salvo Gentile and Marco Patriarca - switches build process from scripp to wepp
- fixes security issues with the zipped download feature
- makes zipped download optional (but enabled by default)
- adds zipped download for selected files
- cleans and refactores
- display meta information in bottom bar (icon view)
- adds
zh-cn
translation by Dongsheng Cai - adds
pl
translation by Radosław Zając - adds
ru
translation by Богдан Илюхин
- adds image thumbnails for PHP version
- new option
slideTree
to turn off auto slide in
- changes in
/h5ai/.htaccess
... PHP configuration ...
- fixes initial tree display
- adds sort order option
- adds/fixes some translations
- adds
lv
translation by Sandis Veinbergs
- adds PHP implementation! (should work with PHP 5.2+)
- adds new options
- changes layout of the bottom bar to display status information
- adds language selector to the bottom bar
- quotes keys in
options.js
to make it valid json - changes value of option
lang
fromundefined
tonull
- adds some new keys to
h5aiLangs
- adds browser caching rules for css and js
- adds
pt
translation by Jonnathan - adds
bg
translation by George Andonov
- adds
tr
translation by Batuhan Icoz
- adds
es
translation by Jose David Calderon Serrano
- fixes unchecked use of console.log
- improves performance
- changes license to MIT license, see
LICENSE.txt
- improves tree scrollbar
- fixes problems with ' in links
- fixes problems with XAMPP on Windows (see
dot.htaccess
comments for instructions) - fixes tree fade-in-fade-out effect for small displays (issue #6)
- adds custom scrollbar to tree (issue #6)
- fixes broken links caused by URI encoding/decoding (issue #9)
- adds "empty" to localization (hope Google Translate did a good job here)
- links hover states between crumb, extended view and tree
- fixes size of tree view (now there's a ugly scrollbar, hopefully will be fixed)
- refactores js to improve performance and cleaned code
- adds caching for folder status codes and content
- adds
fr
translation by Nicolas - adds
nl
translation by Stefan de Konink - adds
sv
translation by Oscar Carlsson
- removes slashes from folder labels
- optionally rename parent folder entries to real folder names, see
options.js
- long breadcrumbs (multiple rows) no longer hide content
- error folder icons are opaque now
- refactores js a lot (again...)
- removes shadows
- smarter tree side bar
- refactores js
- adds localization, see
options.js
- refactores js
- adds basic options support via
options.js
- adds comments to
options.js
- adds optional tree sidebar
- details view adjusts to window width
- links icon for *.gz and *.bz2
- disables tree sidebar for now, since it had unwanted side effects
- adds tree sidebar
- some refactorings
- adds better fallback, in case JavaScript is disabled
- rewrites js, fixed middle-button click etc. problems
- refactors css
- sorts, adds and moves icons and images
- updates dot.access
- removes lib versions from file names
- adds 'empty' indicator for icons view
- refactores js
- adds
folderClick
andfileClick
callback hooks - fixes .emtpy style
- includes build stuff, files previously found in the base directory are now located in folder
target
- styles and scripts are now minified
- adds Modernizr 2.0.4 for future use
- updates jQuery to version 1.6.1
- more refactoring in main.js
- refactores a lot, adds some comments
- includes fixes from NumEricR
- adds top/bottom message support, only basicly styled
- fixes croped filenames
- fixes missing .png extension in header
- adds some color to the links
- adds changelog
- adds icon view