• Stars
    star
    137
  • Rank 260,554 (Top 6 %)
  • Language
    CoffeeScript
  • Created about 12 years ago
  • Updated over 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Shortly: a Serverless Pastebin Service - All Data is Stored in the URL

Shortly

Shortly is a serverless pastebin service. Everything happens on the client side, and the data is stored in the URL.

How it works

Data is compressed using the deflate algorithm, then base64 encoded to ensure it can be stored safely in a URL. It is then set as the window.location.hash of the current page.

You can view an example here and another here. Oh and another here.

Different browsers have different limits of the total URL length, however around 2000 characters seems to be the recommended safe maximum. At the moment there is currently nothing to enforce the limit, however a checksum is added to check that we get all the data.

You may be thinking that these really long urls are an issue, but that isn't the case. Testing bit.ly and t.co with these urls worked without issues. You could even chain them together in order to deal with longer data...

Attribution

This uses the following libraries:

Get Involved

Fork, commit, send pull request, drink beer.

Press

License

Creative Commons License
shortly by Luca Spiller is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Based on a work at github.com.
Permissions beyond the scope of this license may be available at https://github.com/lucaspiller/shortly.

More Repositories

1

dcpu-specifications

Specifications for the fictional hardware of the game 0x10c
66
star
2

espec

ESpec: Behaviour driven development framework for Erlang
Erlang
46
star
3

offline-geocoder

Node library for offline geocoding
JavaScript
30
star
4

twerl

Erlang client for the Twitter Streaming API
Erlang
28
star
5

hugo-privacy-cactus-theme

Privacy Cactus is a minimalistic theme for bloggers
CSS
27
star
6

docker-freeswitch

Freeswitch for Docker.
19
star
7

riak-console

An interactive command line interface to Riak.
Ruby
18
star
8

puppet-ruby

Puppet
14
star
9

plain-david

Automatically generate a text part for your HTML emails in Rails.
Ruby
11
star
10

awesome-programming-games

A curated list of programming games
11
star
11

docker-backup-postgres-s3

Docker image to periodically backup a PostgreSQL database to S3.
Shell
7
star
12

88etag

An open source clone of the game Gate88, written in Javascript
JavaScript
4
star
13

block-large-media

Chrome Extension that will block large media files from being downloaded and sucking up all your bandwidth.
JavaScript
4
star
14

dotfiles

My dotfiles
Vim Script
3
star
15

DataStatus

A tool to let you see the status of your phones data connection when tethered
Objective-C
3
star
16

ysflight-organiser

An organisation tool for the YsFlight flight simulator.
C#
2
star
17

openttd_patches

Random patches left over from my days of pla^H^H^Hcoding OpenTTD. Some mine, some not.
2
star
18

openttd_network_login

Network login system. Left over from my days of pla^H^H^Hcoding OpenTTD.
PHP
2
star
19

escape-velocity

JavaScript game inspired by Tiny Wings
JavaScript
2
star
20

cycle_hire

A Ruby API for the Barclays Cycle Hire scheme in London
Ruby
2
star
21

twitter-example-oauth-signin

An application demonstrating the use of 'Signin with Twitter', using the 'twitter' gem.
Ruby
1
star
22

texty-android

Java
1
star
23

ship-game

DCPU-16 based space game
JavaScript
1
star
24

esp8266-dht22

ESP8266 solar powered temperature sensor.
C
1
star
25

kalendorius

Simple jQuery calendar
JavaScript
1
star
26

passosx

Shell
1
star
27

what-to-wear

Ever feel that you struggle to decide what to wear in the morning?
Ruby
1
star
28

texty-ruby

A Ruby gem interface to the Texty application.
Ruby
1
star
29

brauchbar

adj, German. practical, convenient, utilizable, feasible AKA a decent HTTP client for Ruby
Ruby
1
star
30

shithead

The Shithead card game in Ruby
Ruby
1
star
31

tagC

88etag + DCPU-16 = Poor mans 0x10c
CoffeeScript
1
star
32

wap_profiler

Simple web service to detect the features of a mobile handset
Ruby
1
star
33

spicy-bbq

Spicy BBQ is a tool to combine assets into a single Javascript file in data-uri format.
Shell
1
star
34

openttd_tile_tool

Tile test GUI for 32bpp graphics. Left over from my days of pla^H^H^Hcoding OpenTTD.
C++
1
star