Skip to content
forked from vihankarnik/beam

Cloud Storage Server Website

Notifications You must be signed in to change notification settings

WooJinXD/Storage

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

beam components

  • Username-Password authentication
  • Cookies to rememeber logged-in user
  • Personal drive for each user to save their files in
  • Preview for photos and images for convenience
  • Bonus blog page for learning file handling

How to run

  • Recommended to use Git Bash
  • Clone repository to your computer using SSH:
    git clone [email protected]:vihankarnik/beam.git
  • Create and activate virtual environment using python module virtualenv in beam home directory:
    pip3 install virtualenv
    python3 -m virtualenv venv
    source venv/bin/activate
  • Install all required dependencies listed in requirements.txt into the virtual environment venv
    pip3 install -r requirements.txt
  • Run program using the deployment file wsgi.py
    python3 wsgi.py
  • By default the server runs on port 5000 on the IP address 127.0.0.1
  • If you run this script as a user with normal privileges (recommended), you might not have access to start a port on a low port number. Low port numbers are reserved for the superuser (root).
  • Access the website on http://127.0.0.1:5000

Modules used:

  • The User-Interface is written in HTML and CSS.
  • The backend of this application which is purely written in Python is powered by a micro web framework called Flask which utilises a templating engine called Jinja2 to display the webpage templates. Handling of files is done through Python module os.
  • The client sends the uploaded file using a POST request and this is received by the server backend which is written in Python and securely saved. Downloading files is done through GET requests.

About

Cloud Storage Server Website

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 41.0%
  • HTML 38.1%
  • CSS 20.9%