Skip to content

tfidfwastaken/loosie

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LOOSIE

https://github.com/tfidfwastaken/loosie/workflows/.github/workflows/test.yml/badge.svg

https://user-images.githubusercontent.com/24277692/87672441-98bd9200-c790-11ea-8d73-b57a5dac578d.png

Share viewable files really quickly over the web.
No sign-up required.

Just upload an html, markdown, plaintext, or pdf document, and get a shareable link that correctly displays the document right in the browser, without being offered a download.

This project is came out of a need of mine where I wanted to quickly share loose html documents rendered correctly as links, in a google-drive like fashion.

Loosie is Open Source software and I highly recommend deploying your own instance and using it in a decentralized way.

Deploying your own loosie instance

I am providing instructions for Heroku (especially because it’s free), but this application works anywhere as long as you can install Racket and PostgreSQL, and set the following environment variables:

DATABASE_URL=<your postgresql database url>
APP_URL=<your webapp url (without trailing slash)>

To deploy on Heroku

  • Create your heroku account and create a new app (let’s say you picked the name foosie)
  • Clone this repository
git clone https://github.com/tfidfwastaken/loosie.git && cd loosie
  • Link this repository to your app
heroku git:remote -a foosie
  • Set up the Racket buildpack and Postgres addon on Heroku
heroku buildpacks:set https://github.com/lexi-lambda/heroku-buildpack-racket
heroku addons:create heroku-postgresql:hobby-dev
  • Set the environment variables
heroku config:set RACKET_VERSION=7.7
heroku config:set APP_URL=https://foosie.herokuapp.com

And in five steps you have setup your own personal file sharing instance!

Example instance

https://loosi.herokuapp.com/

Example of a hosted file on my instance:
https://loosi.herokuapp.com/l/Ru9l6q2SpM9z (html version of this readme)

https://loosi.herokuapp.com/l/kkDRtzcq8Hk5 (markdown version of this readme)

A note on privacy

All the passphrase-protected data stored on a loosie instance is encrypted, and as long as you keep your passphrase a secret, even the instance owner cannot access it. So yes, this service is fairly secure. That said, be cautious when uploading sensitive documents to an instance and make sure you trust the instance owner, as a malicious actor can still host a fork that removes the security features provided in this code.