A very simple web application written in Python using Cherrypy web framework to upload files to web and to share them with others.

Farooq Karimi Zadeh a76f9ab9c9 honeypot for bots 3 days ago
webInterface c6eb469294 The password label is not shown if there is no password at all(or a blank one) 4 days ago
.gitignore 4d9dd8bb71 new gitignore 1 week ago
LICENSE.md f45cbff567 fix 4 days ago
README.md 05cdb58d54 Update 'README.md' 1 week ago
UbuntuMono-R.ttf 6c6d251e4f New font for captcha 1 week ago
icons-config.json 14b7b86ed3 icon handler bugs fixed 1 week ago
requirements.txt a043a7cea7 add requirements file 3 weeks ago
server.py a76f9ab9c9 honeypot for bots 3 days ago
server_config.ini.example 194e903310 Formated comments 1 week ago

README.md

PotatoEgg

Run your own personal storage on the net!

A very simple web application written in Python using Cherrypy web framework to upload files to web and to share them with others.

Guests can:

  • Browse all files
  • See description and size of each file
  • Download files (they should provide a password if file had any)

Admin:

  • Can do whatever guests can including the ones below:
  • Change name, description or password of each file
  • See password of each file
  • Upload files from disk to storage
  • Upload files from web(by supplying a URL) to storage
  • Delete files
  • See SHA1 hashsum of files

As this web app has been designed for a single user and for personal use, there is only one admin to log into system. I mean there is only one pair of username and password. You may change the code a little to accept more pairs but all of those pairs will grant the one who wants to log into system the same permission and access level.

Quickstart

Just clone or download the repo and in repo's directory, run this:

python3 server.py -c server_config.ini.example

Now go to 127.0.0.1:8080 in your browser. Default password and username is admin/admin.

After that you might want to change config according to the comments in its file.

TODO

  • use a config file
  • butify [90%]
  • add more view for files table
  • fix high piority bugs
  • change all icons
  • hide hidden files for guests
  • assign icon to hidden files
  • multiple pages
  • external captcha server
  • multiple files action
  • support directories

Credits

Authors = {Farooq Karimi Zadeh, Behnam Simjoo(BSimjoo)}

As you see it is a set and does not have order at all :smile:.

Farooq started the project and has written the backend and part of the frontend which is dealing directly with backend(Javascript).

On the other hand, Behnam has written the rest and most of the frontend which you see with your eye. He actually "beautified" the project. Thank you Behnam!

Licence

The project's code and templates are under GNU LGPL 3 and at your option any later version.

The font used for captcha is Ubuntu Mono Regular by Canonical under the following license:

https://ubuntu.com/legal/font-licence

These are all from The Noun Project:

  • The trash icon is under CC0 1.0 by Nice and Serious.

  • The hash icon is under CC BY 3.0 by Becris.

  • The modify icon is under CC BY 3.0 by Adrien Coquet.

  • The upload from disk icon is under CC BY 3.0 by Setyo Ari Wibowo.

  • The download from internet icon(or upload from internet if you rotate it 180 degrees) is under CC BY 3.0 by Pascal Heß.

  • changing icons to Bootstrap Icons v1.0.0 under MIT License