summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md29
1 files changed, 29 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..a2c481a
--- /dev/null
+++ b/README.md
@@ -0,0 +1,29 @@
+a basic file uploading website demonstration, built on top of laravel.
+
+requirements phase 1:
+- has a page that presents a UI to allow the user to select some files
+- there is a no-javascript version and a javascript version that uses chunking
+- user can upload multiple files or just one
+- after upload, a url to the file(s) is shown to the user, so that anyone can download
+- all of the uploaded files can be browsed
+- errors are reported appropriately, and adequate logging exists
+- file size limit is defined in the laravel config
+- file type restriction can be defined in laravel project config.
+- file names remain the same, unless would be overwrite a different file, in which case append epoch seconds.
+- file expiration configurable
+- rate limiting per ip address
+
+phase 1.5
+- there is a gallery page view that presents images and videos in kind of a gallery layout, and a slideshow when user clicks one of them.
+- instead of downloading files right away, allow for the browser to render them if possible (like images, videos, pdfs)
+
+phase 2:
+- can bind to different address through command line or dotfile or env var
+- https using letsencrypt key defined at a path defined in config.
+- Database integration to store file metadata
+- File model and controller
+- IP address tracking and association with uploads
+- Page visit tracking by IP
+- Enhanced analytics and reporting- there is a database to store metadata of the files
+
+