Website generation with Couscous

This commit is contained in:
Milos Stojanovic
2019-06-18 11:44:29 +02:00
parent c5672815f4
commit 41eff6a36a
5 changed files with 630 additions and 11 deletions

245
configuration.html Normal file
View File

@@ -0,0 +1,245 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>FileGator</title>
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/bootstrap.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/font-awesome.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/highlight.dark.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/main.css">
</head>
<body>
<header class="navbar navbar-default navbar-fixed-top">
<a class="navbar-brand" href="http://docs.filegator.io/filegator/">
FileGator
<small class="hidden-xs hidden-sm">
Documentation
</small>
</a>
<a href="https://github.com/filegator/filegator">
<img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png">
</a>
</header>
<main class="container-fluid">
<div class="row">
<nav id="sidebar" class="col-sm-3 col-lg-2" role="navigation">
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="http://docs.filegator.io/filegator/index.html">
What is FileGator
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/install.html">
Installation
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/configuration.html">
Configuration
</a>
</li>
<li class="">
<a href="demo.html">
Demo
</a>
</li>
<li class="">
<a href="license.html">
License
</a>
</li>
</ul>
</nav>
<section id="content" class="col-sm-offset-3 col-lg-offset-2 col-sm-9 col-lg-10">
<h3 id="configuration-options">Configuration options:</h3>
<pre><code> 'public_path' =&gt; APP_PUBLIC_PATH,
'public_dir' =&gt; APP_PUBLIC_DIR,
'frontend_config' =&gt; [
'app_name' =&gt; 'FileGator',
'app_version' =&gt; APP_VERSION,
'language' =&gt; 'english',
'logo' =&gt; 'https://raw.githubusercontent.com/filegator/filegator/master/dist/img/logo.png',
'upload_max_size' =&gt; 100 * 1024 * 1024, // 100MB
'upload_chunk_size' =&gt; 1 * 1024 * 1024, // 1MB
'upload_simultaneous' =&gt; 3,
'default_archive_name' =&gt; 'archive.zip',
],
'services' =&gt; [
'Filegator\Services\Logger\LoggerInterface' =&gt; [
'handler' =&gt; '\Filegator\Services\Logger\Adapters\MonoLogger',
'config' =&gt; [
'monolog_handlers' =&gt; [
function () {
return new \Monolog\Handler\StreamHandler(
__DIR__.'/private/logs/app.log',
\Monolog\Logger::DEBUG
);
},
],
],
],
'Filegator\Services\Session\SessionStorageInterface' =&gt; [
'handler' =&gt; '\Filegator\Services\Session\Adapters\SessionStorage',
'config' =&gt; [
'session_handler' =&gt; 'filesession',
'available' =&gt; [
'filesession' =&gt; function () {
$save_path = null; // use default system path
//$save_path = __DIR__.'/private/sessions';
$handler = new \Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeFileSessionHandler($save_path);
return new \Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage([], $handler);
},
'database' =&gt; function () {
$handler = new \Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler(
'mysql://root:password@localhost:3360/filegator'
);
return new \Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage([], $handler);
},
],
],
],
'Filegator\Services\Cors\Cors' =&gt; [
'handler' =&gt; '\Filegator\Services\Cors\Cors',
'config' =&gt; [
'enabled' =&gt; APP_ENV == 'production' ? false : true,
],
],
'Filegator\Services\Tmpfs\TmpfsInterface' =&gt; [
'handler' =&gt; '\Filegator\Services\Tmpfs\Adapters\Tmpfs',
'config' =&gt; [
'path' =&gt; __DIR__.'/private/tmp/',
'gc_probability_perc' =&gt; 10,
'gc_older_than' =&gt; 60 * 60 * 24 * 2, // 2 days
],
],
'Filegator\Services\Security\Security' =&gt; [
'handler' =&gt; '\Filegator\Services\Security\Security',
'config' =&gt; [
'csrf_protection' =&gt; true,
'ip_whitelist' =&gt; [],
'ip_blacklist' =&gt; [],
],
],
'Filegator\Services\View\ViewInterface' =&gt; [
'handler' =&gt; '\Filegator\Services\View\Adapters\Vuejs',
'config' =&gt; [
'add_to_head' =&gt; '',
'add_to_body' =&gt; '',
],
],
'Filegator\Services\Storage\Filesystem' =&gt; [
'handler' =&gt; '\Filegator\Services\Storage\Filesystem',
'config' =&gt; [
'separator' =&gt; '/',
'config' =&gt; [],
'filesystem_adapter' =&gt; 'localfilesystem',
'adapters' =&gt; [
'localfilesystem' =&gt; function () {
return new \League\Flysystem\Adapter\Local(
__DIR__.'/repository'
);
},
'ftp' =&gt; function () {
// see: https://flysystem.thephpleague.com/docs/adapter/ftp/
return new \League\Flysystem\Adapter\Ftp([
'host' =&gt; 'example.com',
'username' =&gt; 'demo',
'password' =&gt; 'password',
'port' =&gt; 21,
'timeout' =&gt; 10,
]);
},
'sftp' =&gt; function () {
// composer require league/flysystem-sftp
// see: https://flysystem.thephpleague.com/docs/adapter/sftp/
return new \League\Flysystem\Sftp\SftpAdapter([
'host' =&gt; 'example.com',
'port' =&gt; 22,
'username' =&gt; 'demo',
'password' =&gt; 'password',
'timeout' =&gt; 10,
]);
},
'dropbox' =&gt; function () {
// composer require spatie/flysystem-dropbox
// see: https://flysystem.thephpleague.com/docs/adapter/dropbox/
$authorizationToken = '1234';
$client = new \Spatie\Dropbox\Client($authorizationToken);
return new \Spatie\FlysystemDropbox\DropboxAdapter($client);
},
],
],
],
'Filegator\Services\Archiver\ArchiverInterface' =&gt; [
'handler' =&gt; '\Filegator\Services\Archiver\Adapters\ZipArchiver',
'config' =&gt; [],
],
'Filegator\Services\Auth\AuthInterface' =&gt; [
'handler' =&gt; '\Filegator\Services\Auth\Adapters\JsonFile',
'config' =&gt; [
'file' =&gt; __DIR__.'/private/users.json',
],
//'handler' =&gt; '\Filegator\Services\Auth\Adapters\Database',
//'config' =&gt; [
// 'driver' =&gt; 'mysqli',
// 'host' =&gt; 'localhost',
// 'username' =&gt; 'root',
// 'password' =&gt; 'password',
// 'database' =&gt; 'filegator',
//],
],
'Filegator\Services\Router\Router' =&gt; [
'handler' =&gt; '\Filegator\Services\Router\Router',
'config' =&gt; [
'query_param' =&gt; 'r',
'routes_file' =&gt; __DIR__.'/backend/Controllers/routes.php',
],
],
],</code></pre>
</section>
</div>
</main>
<footer>
<div class="container-fluid">
<p class="text-muted">
website generated with <a href="http://couscous.io" title="Markdown website generator">Couscous</a>
</p>
</div>
</footer>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="//yastatic.net/highlightjs/8.2/highlight.min.js"></script>
<script>
$(function() {
$("section>h1").wrap('<div class="page-header" />');
// Syntax highlighting
hljs.initHighlightingOnLoad();
});
</script>
</body>
</html>

99
demo.html Normal file
View File

@@ -0,0 +1,99 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>FileGator</title>
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/bootstrap.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/font-awesome.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/highlight.dark.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/main.css">
</head>
<body>
<header class="navbar navbar-default navbar-fixed-top">
<a class="navbar-brand" href="http://docs.filegator.io/filegator/">
FileGator
<small class="hidden-xs hidden-sm">
Documentation
</small>
</a>
<a href="https://github.com/filegator/filegator">
<img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png">
</a>
</header>
<main class="container-fluid">
<div class="row">
<nav id="sidebar" class="col-sm-3 col-lg-2" role="navigation">
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="http://docs.filegator.io/filegator/index.html">
What is FileGator
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/install.html">
Installation
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/configuration.html">
Configuration
</a>
</li>
<li class="">
<a href="demo.html">
Demo
</a>
</li>
<li class="">
<a href="license.html">
License
</a>
</li>
</ul>
</nav>
<section id="content" class="col-sm-offset-3 col-lg-offset-2 col-sm-9 col-lg-10">
<h2 id="demo">Demo</h2>
<p><a href="https://demo.filegator.io"><a href="https://demo.filegator.io">https://demo.filegator.io</a></a></p>
<p>This is read-only demo with guest account enabled.
You can also log in with john/john to see John's private files.</p>
</section>
</div>
</main>
<footer>
<div class="container-fluid">
<p class="text-muted">
website generated with <a href="http://couscous.io" title="Markdown website generator">Couscous</a>
</p>
</div>
</footer>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="//yastatic.net/highlightjs/8.2/highlight.min.js"></script>
<script>
$(function() {
$("section>h1").wrap('<div class="page-header" />');
// Syntax highlighting
hljs.initHighlightingOnLoad();
});
</script>
</body>
</html>

View File

@@ -4,40 +4,94 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<title>FileGator</title>
<link rel="stylesheet" href="/css/bootstrap.min.css">
<link rel="stylesheet" href="/css/font-awesome.min.css">
<link rel="stylesheet" href="/css/highlight.dark.css">
<link rel="stylesheet" href="/css/main.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/bootstrap.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/font-awesome.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/highlight.dark.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/main.css">
</head>
<body>
<header class="navbar navbar-default navbar-fixed-top">
<a class="navbar-brand" href="/">
The title
<a class="navbar-brand" href="http://docs.filegator.io/filegator/">
FileGator
<small class="hidden-xs hidden-sm">
This is the default subtitle!
Documentation
</small>
</a>
<a href="https://github.com/filegator/filegator">
<img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png">
</a>
</header>
<main class="container">
<main class="container-fluid">
<div class="row">
<section id="content" class="col-sm-12">
<nav id="sidebar" class="col-sm-3 col-lg-2" role="navigation">
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="http://docs.filegator.io/filegator/index.html">
What is FileGator
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/install.html">
Installation
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/configuration.html">
Configuration
</a>
</li>
<li class="">
<a href="demo.html">
Demo
</a>
</li>
<li class="">
<a href="license.html">
License
</a>
</li>
</ul>
</nav>
<section id="content" class="col-sm-offset-3 col-lg-offset-2 col-sm-9 col-lg-10">
<h2 id="filegator">FileGator</h2>
<p>FileGator is PHP script for managing online files and folders.</p>
<p>You can manage files inside your local repository folder (on your server's hard drive) or connect to other storage adaptes (see below).</p>
<p>FileGator has multi-user support so you can have admins and other users managing files with different access permissions, roles and home folders.</p>
<p>All basic file operations are supported: copy, move, rename, create, delete, zip, unzip, download, upload.</p>
<p>If allowed, users can download multiple files or folders at once.</p>
<p>File upload supports drag&amp;drop, progress bar, pause and resume. Upload is chunked so you should be able to upload large files regardless of your server configuration.</p>
<h2 id="features-amp-goals">Features &amp; Goals</h2>
<ul>
<li>Multiple storage adapters (Local, FTP, S3, Dropbox and many others via <a href="https://github.com/thephpleague/flysystem">Flysystem</a>)</li>
<li>Multiple auth adapters with roles and permissions (Store users in json file or database)</li>
<li>Multiple session adapters (Native File, Pdo, MongoDB, Memcached and others via <a href="https://github.com/symfony/symfony/tree/master/src/Symfony/Component/HttpFoundation/Session/Storage/Handler">Symfony</a>)</li>
<li>Single page front-end (built with <a href="https://github.com/vuejs/vue">Vuejs</a>, <a href="https://github.com/jgthms/bulma">Bulma</a> and <a href="https://github.com/buefy/buefy">Buefy</a>)</li>
<li>Chunked uploads (built with <a href="https://github.com/23/resumable.js">Resumable.js</a>)</li>
<li>Zip and bulk download support</li>
<li>Highly extensible, decoupled and tested code</li>
<li>No database required</li>
<li>Framework free <a href="https://www.youtube.com/watch?v=L5jI9I03q8E"></a></li>
</ul>
</section>
</div>
</main>
<footer>
<div class="container">
<div class="container-fluid">
<p class="text-muted">
website generated with <a href="http://couscous.io" title="Markdown website generator">Couscous</a>
</p>

110
install.html Normal file
View File

@@ -0,0 +1,110 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>FileGator</title>
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/bootstrap.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/font-awesome.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/highlight.dark.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/main.css">
</head>
<body>
<header class="navbar navbar-default navbar-fixed-top">
<a class="navbar-brand" href="http://docs.filegator.io/filegator/">
FileGator
<small class="hidden-xs hidden-sm">
Documentation
</small>
</a>
<a href="https://github.com/filegator/filegator">
<img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png">
</a>
</header>
<main class="container-fluid">
<div class="row">
<nav id="sidebar" class="col-sm-3 col-lg-2" role="navigation">
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="http://docs.filegator.io/filegator/index.html">
What is FileGator
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/install.html">
Installation
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/configuration.html">
Configuration
</a>
</li>
<li class="">
<a href="demo.html">
Demo
</a>
</li>
<li class="">
<a href="license.html">
License
</a>
</li>
</ul>
</nav>
<section id="content" class="col-sm-offset-3 col-lg-offset-2 col-sm-9 col-lg-10">
<h2 id="requirements">Requirements</h2>
<ul>
<li>PHP 7.1.3+</li>
</ul>
<h2 id="download-precompiled-build">Download precompiled build</h2>
<ul>
<li>Latest: <a href="https://github.com/filegator/static/raw/master/builds/filegator_v7.0.0-RC2.zip">v7.0.0-RC2</a></li>
<li>Unzip files and upload them to your PHP server</li>
<li>Make sure you webserver can read and write to <code>/storage</code> and <code>/private</code> folders</li>
<li>Set the website document root to <code>/dist</code> directory</li>
<li>Visit web page, if something goes wrong check <code>/private/logs/app.log</code></li>
<li>Login with default credentials <code>admin/admin123</code></li>
<li>Change default admin's password</li>
<li>Adjust <code>configuration.php</code> file</li>
</ul>
</section>
</div>
</main>
<footer>
<div class="container-fluid">
<p class="text-muted">
website generated with <a href="http://couscous.io" title="Markdown website generator">Couscous</a>
</p>
</div>
</footer>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="//yastatic.net/highlightjs/8.2/highlight.min.js"></script>
<script>
$(function() {
$("section>h1").wrap('<div class="page-header" />');
// Syntax highlighting
hljs.initHighlightingOnLoad();
});
</script>
</body>
</html>

111
license.html Normal file
View File

@@ -0,0 +1,111 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>FileGator</title>
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/bootstrap.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/font-awesome.min.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/highlight.dark.css">
<link rel="stylesheet" href="http://docs.filegator.io/filegator/css/main.css">
</head>
<body>
<header class="navbar navbar-default navbar-fixed-top">
<a class="navbar-brand" href="http://docs.filegator.io/filegator/">
FileGator
<small class="hidden-xs hidden-sm">
Documentation
</small>
</a>
<a href="https://github.com/filegator/filegator">
<img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/38ef81f8aca64bb9a64448d0d70f1308ef5341ab/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6461726b626c75655f3132313632312e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png">
</a>
</header>
<main class="container-fluid">
<div class="row">
<nav id="sidebar" class="col-sm-3 col-lg-2" role="navigation">
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="http://docs.filegator.io/filegator/index.html">
What is FileGator
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/install.html">
Installation
</a>
</li>
<li class="">
<a href="http://docs.filegator.io/filegator/configuration.html">
Configuration
</a>
</li>
<li class="">
<a href="demo.html">
Demo
</a>
</li>
<li class="">
<a href="license.html">
License
</a>
</li>
</ul>
</nav>
<section id="content" class="col-sm-offset-3 col-lg-offset-2 col-sm-9 col-lg-10">
<p>Copyright (c) 2012-2019 Milos Stojanovic</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the &quot;Software&quot;), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is furnished
to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.</p>
</section>
</div>
</main>
<footer>
<div class="container-fluid">
<p class="text-muted">
website generated with <a href="http://couscous.io" title="Markdown website generator">Couscous</a>
</p>
</div>
</footer>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="//yastatic.net/highlightjs/8.2/highlight.min.js"></script>
<script>
$(function() {
$("section>h1").wrap('<div class="page-header" />');
// Syntax highlighting
hljs.initHighlightingOnLoad();
});
</script>
</body>
</html>