A Cloud storage and sharing Application/Service in PHP using Amazon's s3 and glacier cloud servers
Skills required: PHP, MySql, AJAX, SOAP/REST API, FLASH, JQUERY
The basic flow of the "user interface" can be summarized in 3 simple steps.
1. User registers/Logs in, on my site.
2. Uploads files from his computer using a web interface. (Files get stored in Amazon servers)
3. User then Views/Downloads/Shares, their files.
"Admin interface" can have basic user management functions.
Detailed Specification or Features list for USER INTERFACE:
(1) user registration:
Note: Signup fees (from users) will be processed by myself. So, I do not need this function.
Each user registers with the following options:
*BucketName is similar to username. Each user's data will be stored under a folder and this will be the bucket name.
Note: The script should verify if the bucket name is available (using the API function) before registering an account.
Once the registration is successful, the user gets a welcome email containing his login credentials.
Note: All emails should be routed through [url removed, login to view] (An email routing service. This is done because most web hosts, including mine, limit the number of hourly/daily emails that can be sent via them)
(2) members area :
User should login on my website:
[url removed, login to view]
Note: I need to use an SSL certificate to make sure my site is https:// secure.
User should have the following menu options:
Drive | Profile | Help | Support
Here, the user should be able to see all the files he has stored in the Amazon cloud servers (under his bucket name).. I think, all the files that are stored on the servers can be imported and listed here, via the API function.
I need the following options for the "files" view table
Checkbox | List the files | Modified | Size | Sharing*
*Sharing: if a file is shared with others, it should show a "shared" note next to it. (see the red circle)
New Folder, Add Files Search
Note: Files can be uploaded either using a Flash/Java uploader.
Download, Share, Rename, Move, Delete
Shared Files, Deleted Items
Please see attachments for a graphical representation of the Drive, for your reference.
Note: Please create a free account on [url removed, login to view] to see the above features like Download, Sharing etc in action.
Profile : Here users can edit their name, email, password etc.
Help : Just links to an URL.
Support : Just links to an URL.
Detailed Specification or Features list for ADMIN INTERFACE:
(1) List users
A list of all users in the following format (table options)
firstname | lastname | email | bucket name | data used | plan name | status (active/suspended)
I should be able to edit/suspend/un-suspend/Delete a user.
Also, I should be able to view users based on..
search user (using an email)
(2) Add User
Admin should be able to add a user with the following options:
Even when admin adds a user, they should get a welcome email automatically.
(3) Storage Plans (Add / View)
Storage plan name | storage size | Total members | edit/delete plan
Amazon API keys
Amazon s3/Glacier object lifescycle management options
Welcome emails, Forgot password email
Amazon S3 Documentation: [url removed, login to view]
Amazon Glacier Documentation: [url removed, login to view]
Amazon Cloud Drive Trial Signup: [url removed, login to view]
1) One time signup link with auto upgrade feature
2) ability to view images/videos online
3) Object Lifecycle management options (s3 to glacier data transition after X days and/or X amount of data in S3 and Y amount of data in Glacier)
4) File versioning
5) Flash and Ajax elements wherever required (Example: Drag and drop file to upload)
6) Deleted folder feature.