All Projects → ethanpil → sheret

ethanpil / sheret

Licence: GPL-3.0 license
A tiny, simple static file web server.

Programming Languages

HTML
75241 projects
go
31211 projects - #10 most used programming language
Batchfile
5799 projects

Projects that are alternatives of or similar to sheret

Facebooc
Yet another Facebook clone written in C
Stars: ✭ 483 (+973.33%)
Mutual labels:  web-server, http-server
tinyweb
Simple and lightweight HTTP async server for micropython
Stars: ✭ 182 (+304.44%)
Mutual labels:  web-server, http-server
Caddy
Matthew Holt began developing Caddy in 2014 while studying computer science at Brigham Young University. (The name "Caddy" was chosen because this software helps with the tedious, mundane tasks of serving the Web, and is also a single place for multiple things to be organized together.) It soon became the first web server to use HTTPS automatically and by default, and now has hundreds of contributors and has served trillions of HTTPS requests.
Stars: ✭ 35,966 (+79824.44%)
Mutual labels:  web-server, http-server
stirfry
StirFry is a self contained and lightweight web framework for nodejs
Stars: ✭ 24 (-46.67%)
Mutual labels:  web-server, http-server
Andserver
🍒 Web server and web framework of Android platform.
Stars: ✭ 2,932 (+6415.56%)
Mutual labels:  web-server, http-server
crab
🦀 a simple web server
Stars: ✭ 18 (-60%)
Mutual labels:  web-server, http-server
Hummingbird
Lightweight, flexible HTTP server framework written in Swift
Stars: ✭ 114 (+153.33%)
Mutual labels:  web-server, http-server
Mofuw
mofuw is *MO*re *F*aster, *U*ltra minimal *W*ebserver.
Stars: ✭ 107 (+137.78%)
Mutual labels:  web-server, http-server
Servr
A simple HTTP server in R
Stars: ✭ 228 (+406.67%)
Mutual labels:  web-server, http-server
Catacumba
Asynchronous web toolkit for clojure built on top of Ratpack / Netty
Stars: ✭ 192 (+326.67%)
Mutual labels:  web-server, http-server
Embedio
A tiny, cross-platform, module based web server for .NET
Stars: ✭ 1,007 (+2137.78%)
Mutual labels:  http-server, tiny
Kvantum
An intellectual (HTTP/HTTPS) web server with support for server side templating (Crush, Apache Velocity and JTwig)
Stars: ✭ 17 (-62.22%)
Mutual labels:  web-server, http-server
Http File Server
tiny portable HTTP file server. single binary, no dependencies. linux, osx, windows. #golang
Stars: ✭ 37 (-17.78%)
Mutual labels:  http-server, tiny
Binserve
A blazingly fast static web server with routing, templating, and security in a single binary you can set up with zero code. ⚡️🦀
Stars: ✭ 401 (+791.11%)
Mutual labels:  web-server, http-server
Fenix
A simple and visual static web server with collaboration features.
Stars: ✭ 1,559 (+3364.44%)
Mutual labels:  web-server, http-server
Mongols
C++ high performance networking with TCP/UDP/RESP/HTTP/WebSocket protocols
Stars: ✭ 250 (+455.56%)
Mutual labels:  web-server, http-server
tipi
Tipi - the All-in-one Web Server for Ruby Apps
Stars: ✭ 214 (+375.56%)
Mutual labels:  web-server, http-server
filehost-server
A CDN server for hosting all types of files/folders.
Stars: ✭ 15 (-66.67%)
Mutual labels:  web-server
lighttpd-Link
A lighttpd powered lightweight web server for the Steam Link
Stars: ✭ 21 (-53.33%)
Mutual labels:  http-server
libmicrohttpd-http2
HTTP/2 support for libmicrohttpd
Stars: ✭ 21 (-53.33%)
Mutual labels:  http-server

sheret-logo

Sheret

A tiny, simple static web server written in Go.

GPL Licence

Table of Contents

Install

Windows binaries are available from the Sheret Releases page on GitHub. Download and extract the binary to anywhere on your filesystem. There are no dependencies.

Usage

2017-05-26_144823

Usage: sheret [options]

Parameters:
  -d string
        directory to serve from (default ".")
  
  -f string
  	    log to disk path [./sheret.log]
  
  -p string
        port to serve on (default "8100")
  
  -q    suppress all logging
  
  -b    do not open default browser
  
  -h    show usage help

After downloading, you can start Sheret simply with sheret from the command line. By default, Sheret will begin serving from the directory it is located, on HTTP port 8100. Sheret will log all activity to the console. To terminate Sheret, simply type CTRL+C in the console window.

The console window will log all requests, and pretty print both URL Parameters as well as POST request variables for easier debugging.

2020/04/19 22:06:18 Sheret v1.2 serving . on HTTP port: 8100
2020/04/19 22:06:18 -- Press CTRL-C to terminate --
2020/04/19 22:06:19 [::1]:43578 GET /
2020/04/19 22:06:46 [::1]:43578 GET /?urlvar1=abc&urlvar2=def
2020/04/19 22:06:46      URL:   urlvar1  =      abc
2020/04/19 22:06:46      URL:   urlvar2  =      def
2020/04/19 22:06:46 ---- End Data. 2 Values Received ----
2020/04/19 22:07:05 [::1]:43578 POST /?urlvar1=abc&urlvar2=def
2020/04/19 22:07:05      URL:   urlvar1  =      abc
2020/04/19 22:07:05      URL:   urlvar2  =      def
2020/04/19 22:07:05     POST:   selector         =      Option 02
2020/04/19 22:07:05     POST:   texter   =      789
2020/04/19 22:07:05     POST:   radio2   =      on
2020/04/19 22:07:05     POST:   checker  =      on
2020/04/19 22:07:05     POST:   inputer  =      123
2020/04/19 22:07:05 ---- End Data. 7 Values Received ----

The -f option will enable logging to disk. All console output from Sheret will also be saved in sheret.log next to the executable.

Contribute

PRs accepted. Submit any suggestions or corrections via a GitHub pull request. Support via GitHub issues is limited.

Security

This is a simple tool meant for developers to test local code. It is 100% based on Golangs included HTTP library. No security related code or testing has been added by the author. This tool is not meant for production use, or even any type of server which connects directly to a public network. No guarantee is provided or implied.

Changelog

*v1.21 - May 8, 2020

  New: Add flag to disable open system browser on launch

*v1.2 - April 19, 2020

  New: Remove folder creation in zipped release by packaging script 
  New: Reduce binary size (2mb!) by stripping debug information during build
  New: Log both URL Params and POST Vars. Simplify output
  New: Open system browser to root on launch
  Internal: Fix some whitespacing in code (Yak shave!)
  Internal: Add notification and pause to release packaging script

*v1.1 - April 14, 2020

	Remove hardcoded logfile path. -f parameter works now
	Better error handling and messages when logpath fails
	Improve quiet mode for complete quiet
	Release without UPX packing to prevent false positive with AV tools
	Improve default HTML page
	New build/release scripts

*v1.0 - May 26, 2017

	Initial Release

WIP

Perhaps the next version... perhaps never. :) PR requests will help!

  • Make quiet mode not mutually exclusive of logfile/console
  • Commandline flag to disable browser open
  • Commandline flag to disable data logging (but still log requests)
  • Simple CGI passthrough (very unlikely)

Credits & Acknowledgments

  • The Sheret logo icon is provided by FreePik
  • FYI: שרת Sheret is the Hebrew word for Server :)

License

GPL v3 © Ethan Piliavin

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].