Compare commits
	
		
			1 Commits
		
	
	
		
			bea448306d
			...
			eba23bd088
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| eba23bd088 | 
							
								
								
									
										61
									
								
								about.md
									
									
									
									
									
								
							
							
						
						
									
										61
									
								
								about.md
									
									
									
									
									
								
							@ -1,61 +0,0 @@
 | 
				
			|||||||
# Haste
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Sharing code is a good thing, and it should be _really_ easy to do it.
 | 
					 | 
				
			||||||
A lot of times, I want to show you something I'm seeing - and that's where we
 | 
					 | 
				
			||||||
use pastebins.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Haste is the prettiest, easiest to use pastebin ever made.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Basic Usage
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Type what you want me to see, click "Save", and then copy the URL.  Send that
 | 
					 | 
				
			||||||
URL to someone and they'll see what you see.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
To make a new entry, click "New" (or type 'control + n')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## From the Console
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Most of the time I want to show you some text, it's coming from my current
 | 
					 | 
				
			||||||
console session.  We should make it really easy to take code from the console
 | 
					 | 
				
			||||||
and send it to people.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
`cat something | haste` # https://hastebin.com/1238193
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
You can even take this a step further, and cut out the last step of copying the
 | 
					 | 
				
			||||||
URL with:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
* osx: `cat something | haste | pbcopy`
 | 
					 | 
				
			||||||
* linux: `cat something | haste | xsel`
 | 
					 | 
				
			||||||
* windows: check out [WinHaste](https://github.com/ajryan/WinHaste)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
After running that, the STDOUT output of `cat something` will show up at a URL
 | 
					 | 
				
			||||||
which has been conveniently copied to your clipboard.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
That's all there is to that, and you can install it with `gem install haste`
 | 
					 | 
				
			||||||
right now.
 | 
					 | 
				
			||||||
  * osx: you will need to have an up to date version of Xcode
 | 
					 | 
				
			||||||
  * linux: you will need to have rubygems and ruby-devel installed
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Duration
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Pastes will stay for 30 days from their last view.  They may be removed earlier
 | 
					 | 
				
			||||||
and without notice.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Privacy
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
While the contents of hastebin.com are not directly crawled by any search robot
 | 
					 | 
				
			||||||
that obeys "robots.txt", there should be no great expectation of privacy.  Post
 | 
					 | 
				
			||||||
things at your own risk. Not responsible for any loss of data or removed
 | 
					 | 
				
			||||||
pastes.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Open Source
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Haste can easily be installed behind your network, and it's all open source!
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
* [haste-client](https://github.com/seejohnrun/haste-client)
 | 
					 | 
				
			||||||
* [haste-server](https://github.com/seejohnrun/haste-server)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Author
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Code by John Crepezzi <john.crepezzi@gmail.com>
 | 
					 | 
				
			||||||
Key Design by Brian Dawson <bridawson@gmail.com>
 | 
					 | 
				
			||||||
							
								
								
									
										13
									
								
								config.js
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								config.js
									
									
									
									
									
								
							@ -11,16 +11,5 @@
 | 
				
			|||||||
      "type": "Console",
 | 
					      "type": "Console",
 | 
				
			||||||
      "colorize": true
 | 
					      "colorize": true
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  ],
 | 
					  ]
 | 
				
			||||||
  "rateLimits": {
 | 
					 | 
				
			||||||
    "categories": {
 | 
					 | 
				
			||||||
      "normal": {
 | 
					 | 
				
			||||||
        "totalRequests": 500,
 | 
					 | 
				
			||||||
        "every": 60000
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  "documents": {
 | 
					 | 
				
			||||||
    "about": "./about.md"
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,26 +1,17 @@
 | 
				
			|||||||
var fs = require('fs');
 | 
					var fs = require('fs');
 | 
				
			||||||
var crypto = require('crypto');
 | 
					var crypto = require('crypto');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var winston = require('winston');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// For storing in files
 | 
					 | 
				
			||||||
// options[type] = file
 | 
					 | 
				
			||||||
// options[path] - Where to store
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var FileDocumentStore = function() {
 | 
					var FileDocumentStore = function() {
 | 
				
			||||||
  this.basePath = '/data';
 | 
					  this.basePath = '/data';
 | 
				
			||||||
  this.expire = null;
 | 
					  this.expire = null;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Generate md5 of a string
 | 
					 | 
				
			||||||
FileDocumentStore.md5 = function(str) {
 | 
					FileDocumentStore.md5 = function(str) {
 | 
				
			||||||
  var md5sum = crypto.createHash('md5');
 | 
					  var md5sum = crypto.createHash('md5');
 | 
				
			||||||
  md5sum.update(str);
 | 
					  md5sum.update(str);
 | 
				
			||||||
  return md5sum.digest('hex');
 | 
					  return md5sum.digest('hex');
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Save data in a file, key as md5 - since we don't know what we could
 | 
					 | 
				
			||||||
// be passed here
 | 
					 | 
				
			||||||
FileDocumentStore.prototype.set = function(key, data, callback) {
 | 
					FileDocumentStore.prototype.set = function(key, data, callback) {
 | 
				
			||||||
  try {
 | 
					  try {
 | 
				
			||||||
    var _this = this;
 | 
					    var _this = this;
 | 
				
			||||||
@ -40,7 +31,6 @@ FileDocumentStore.prototype.set = function(key, data, callback) {
 | 
				
			|||||||
  }
 | 
					  }
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Get data from a file from key
 | 
					 | 
				
			||||||
FileDocumentStore.prototype.get = function(key, callback) {
 | 
					FileDocumentStore.prototype.get = function(key, callback) {
 | 
				
			||||||
  var _this = this;
 | 
					  var _this = this;
 | 
				
			||||||
  var fn = this.basePath + '/' + FileDocumentStore.md5(key);
 | 
					  var fn = this.basePath + '/' + FileDocumentStore.md5(key);
 | 
				
			||||||
 | 
				
			|||||||
@ -11,8 +11,8 @@ var DocumentHandler = require('./lib/document_handler');
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
// Load the configuration and set some defaults
 | 
					// Load the configuration and set some defaults
 | 
				
			||||||
var config = JSON.parse(fs.readFileSync('./config.js', 'utf8'));
 | 
					var config = JSON.parse(fs.readFileSync('./config.js', 'utf8'));
 | 
				
			||||||
config.port = process.env.PORT || config.port || 7777;
 | 
					config.host = config.host || '127.0.0.1';
 | 
				
			||||||
config.host = process.env.HOST || config.host || 'localhost';
 | 
					config.port = config.port || 7777;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// Set up the logger
 | 
					// Set up the logger
 | 
				
			||||||
if (config.logging) {
 | 
					if (config.logging) {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user