File Management System - Laravel Framework

FMS - Login Screen
FMS - Files Upload
FMS - Share to other user
FMS - User Dashboard

A File Management System or FMS is a library  which keeps  documents/directories in an organized directories/folders/files manner.  The purpose of the FMS is for internal purposes to organize files and folder for different projects. The files can be download and upload by authenticated users. 

File Management System Project brief :

The brief is not the complete document it is just the small summary of complete project.

Uploading of files

  • Uploading files Drag & Drop with multiple version
  • Files can be assigned to multiple users
  • List of different types of file extensions that can be uploaded will be shared

Storage of files 

  • Files save hierarchical manner in folder
  • Only a authorized user can access the folders/directories
  • Files deletion is also based on user roles

Retrieval of Files

  • Filters for searching files
  • A most viewed/recently viewed section keep on dashboard [similar to Google Drive]
  • Date present in grid and list view

Version Control 

  • Version Control is necessary to have for all files and folders to track the history, access
    and changes to a document/directory.
  • File should also be possible to restore as well, or to restore a specific version
  • Once file is deleted from FMS then it will goes into recycle bin and after a month file
    will permanently delete.

Workflow Management/Analytics

  • View user access file/documents
  • Two Role  Admin and users only.
  • Ability to create new sections and departments
  • Sharing/access of documents/directories across users is possible and managed by Admin.

Document Security

  • Who can access information
  • How can they retain it
  • What changes are they authorized to make

Metadata Management

Creation of a metadata library which assists other users with tags which are already in
place, thus prevents duplication of work and saves the search time.

Flexible Indexing

Flexible indexing is necessary that allows for searches to happen at light speed with the
help of metadata, strings, and multiple other tags to provide fast results
Link for Wireframe: #

The Solutions that we offered: 

This is an Intranet application and client run it in their office for their employe.
We suggest client the Laravel platform and developed the complete application. We analysis the project designs the database, User Interface and taking approval on client in development phase. 
After complete development and testing & debugging, we hosted the application on client local server remotely.  

With mutual understanding with client we decided the 4 delivery of project that is small brief as below: 

Delivery 1 (Admin)

  • Login - out
  • Admin Profile Screen
  • Manage user
  • Creating sections in Dashboard/home screen (left side menu)
  • New Folder creation
  • Uploading files
  • Files can be shared internally, and assigned to multiple users
  • Folder Filters by name/date
  • List and grid view

Delivery 2

  • Share page which contains shared access of users
  • Single click to select folders/files
  • Lock files
  • Upload user details using CSV format
  • Delete files/folders according to the permissions
  • CRUD for projects, sections , folders and files

Delivery 3

  • Edit/delete/share sections 
  • Download, Move folders/files once selected
  • Recycle bin (file automatically deletes after 20-25 days from the server)
  • Upload multiple version of files 
  • User Profile Screen
  • User Dashboard Screen

Delivery 4

  • Only permitted user can delete the files.
  • Users will be able to share their own files with other users
  • Advanced Filters and search 
  • Deployment to our our intranet server