Skip to content

Commit

Permalink
Merge branch 'release/0.8.5'
Browse files Browse the repository at this point in the history
  • Loading branch information
nwtgck committed Feb 4, 2019
2 parents 37f0df8 + 244deb6 commit 4e4b886
Show file tree
Hide file tree
Showing 7 changed files with 44 additions and 40 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
/node_modules
/dist
/src/version.ts

/ssl_certs
13 changes: 0 additions & 13 deletions .travis.yml

This file was deleted.

7 changes: 6 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)

## [Unreleased]

## [0.8.5] - 2019-02-04
### Changed
* Update dependencies

## [0.8.4] - 2019-01-28
### Fixed
* Fix not to pass "undefined" if content-type in multipart is not present
Expand Down Expand Up @@ -113,7 +117,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
* Docker automated build on Docker Hub
* Support HTTPS

[Unreleased]: https://github.com/nwtgck/piping-server/compare/v0.8.4...HEAD
[Unreleased]: https://github.com/nwtgck/piping-server/compare/v0.8.5...HEAD
[0.8.5]: https://github.com/nwtgck/piping-seraver/compare/v0.8.4...v0.8.5
[0.8.4]: https://github.com/nwtgck/piping-seraver/compare/v0.8.3...v0.8.4
[0.8.3]: https://github.com/nwtgck/piping-seraver/compare/v0.8.2...v0.8.3
[0.8.2]: https://github.com/nwtgck/piping-seraver/compare/v0.8.1...v0.8.2
Expand Down
22 changes: 19 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,31 @@
# piping-server
[![npm](https://img.shields.io/npm/v/piping-server.svg)](https://www.npmjs.com/package/piping-server) [![CodeFactor](https://www.codefactor.io/repository/github/nwtgck/piping-server/badge)](https://www.codefactor.io/repository/github/nwtgck/piping-server)
[![Build Status](https://travis-ci.com/nwtgck/piping-server.svg?branch=develop)](https://travis-ci.com/nwtgck/piping-server) [![CircleCI](https://circleci.com/gh/nwtgck/piping-server.svg?style=shield)](https://circleci.com/gh/nwtgck/piping-server)
[![npm](https://img.shields.io/npm/v/piping-server.svg)](https://www.npmjs.com/package/piping-server) [![CodeFactor](https://www.codefactor.io/repository/github/nwtgck/piping-server/badge)](https://www.codefactor.io/repository/github/nwtgck/piping-server) [![CircleCI](https://circleci.com/gh/nwtgck/piping-server.svg?style=shield)](https://circleci.com/gh/nwtgck/piping-server)
[![Docker Automated build](https://img.shields.io/docker/automated/nwtgck/piping-server.svg)](https://hub.docker.com/r/nwtgck/piping-server/)
[![](https://images.microbadger.com/badges/image/nwtgck/piping-server.svg)](https://microbadger.com/images/nwtgck/piping-server "Get your own image badge on microbadger.com") [![Dependabot Status](https://api.dependabot.com/badges/status?host=github&repo=nwtgck/piping-server)](https://dependabot.com)

[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy)

HTTP Piping Data Transfer Server
Streaming Data Transfer Server over HTTP/HTTPS

![piping server transfer](demo_images/piping-server.gif)

## Design Philosophy

Piping server is designed to realize the following three ideas.

1. Account-free
1. Install-free
1. Engineer friendly

Usually, when you want to send data to someone, you need to have an account in the common service among you and his/her.
In addition, the service may require you to install specific software to share the data.


Piping server is designed to solve the problems above.
Piping server allows you to use without any account and frees you from additional software installation because the server is available with Web browsers, `curl` and `wget` commands, which are widely pre-installed in Unix-like OS.
Because of HTTP/HTTPS, users can send data across different devices such as Windows, macOS, Unix, Linux, iOS, Android and any device which uses HTTP.
Furthermore, pipe in Unix-like OS allows you to send data in a more efficient and secure way.

## Transfer example

Suppose a Piping server is running on <https://piping.glitch.me>. You can send "hello.txt" to a receiver.
Expand Down
17 changes: 9 additions & 8 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 7 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
{
"name": "piping-server",
"version": "0.8.4",
"description": "HTTP Piping Data Transfer Server",
"version": "0.8.5",
"description": "Streaming Data Transfer Server over HTTP/HTTPS",
"bin": {
"piping-server": "dist/src/index.js"
},
"main": "dist/src/piping.js",
"types": "dist/src/piping.d.ts",
"scripts": {
"build": "tsc",
"generate-version": "echo \"export const VERSION = \\\"$npm_package_version\\\";\" > src/version.ts",
"build": "npm run generate-version && tsc",
"start": "npm run build && node dist/src/index.js",
"lint": "tslint 'src/**/*.ts' && tslint 'test/**/*.ts'",
"prepare": "npm run build",
Expand All @@ -30,23 +31,23 @@
"devDependencies": {
"@types/get-port": "4.0.0",
"@types/mocha": "^5.0.0",
"@types/node": "^10.11.0",
"@types/node": "^10.12.21",
"@types/power-assert": "^1.5.0",
"@types/request": "^2.48.1",
"@types/yargs": "^12.0.0",
"espower-typescript": "^9.0.0",
"get-port": "^4.0.0",
"mocha": "^5.0.5",
"pkginfo": "^0.4.1",
"power-assert": "^1.4.4",
"request": "^2.88.0",
"then-request": "^6.0.0",
"ts-node": "^8.0.1",
"tslint": "^5.12.1",
"typescript": "^3.0.1"
"typescript": "^3.3.1"
},
"dependencies": {
"multiparty": "^4.2.1",
"pkginfo": "^0.4.1",
"yargs": "^12.0.2"
}
}
11 changes: 2 additions & 9 deletions src/piping.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,12 @@
import * as http from "http";
import * as multiparty from "multiparty";
import * as pkginfo from "pkginfo";
import {ParsedUrlQuery} from "querystring";
import * as stream from "stream";
import * as url from "url";

import * as path from "path";
import {opt, optMap} from "./utils";

// Set module.exports.version
pkginfo(module, "version");

// Get version
// (from: https://stackoverflow.com/a/22339262/2885946)
const VERSION: string = module.exports.version;
import {VERSION} from "./version";

type ReqRes = {
readonly req: http.IncomingMessage,
Expand Down Expand Up @@ -90,7 +83,7 @@ const indexPage: string =
</head>
<body>
<h1>Piping</h1>
Streaming file sending/receiving
Streaming Data Transfer Server over HTTP/HTTPS
<form method="POST" id="file_form" enctype="multipart/form-data">
<h3>Step 1: Choose a file or text</h3>
Expand Down

0 comments on commit 4e4b886

Please sign in to comment.