A Web Server for Chrome, serves web pages from a local folder over the network, using HTTP. Runs offline.

Latest Version

Version
0.5.2
Update
April 6, 2021
Size
1.05MiB
Developer
chromebeat.com
Category
Users
300,000+
Rating
4.74343 ★
Manifest Version
2
Web Store Status
Languages Support
English
See more
Permissions
Alarms
UnlimitedStorage
Storage
Notifications
Browser
Power
System.network
FileSystem:
0: - write
1: - directory
2: - retainEntries
See more

Web Server for Chrome Application

Web Server for Chrome is an open source (MIT) HTTP server for Chrome.

It runs anywhere that you have Chrome installed, so you can take it anywhere. It even works on ARM chromebooks.

It now has the option to listen on the local network, so other computers can access your files. Additionally, it can try and get an internet address.

Many people use this to do basic web development on a chromebook. It is also handy for sharing files over a local network between computers, or even on the internet.

Once you install it, navigate to http://127.0.0.1:8887

Please let me know what new features you want!

https://github.com/kzahel/web-server-chrome

Update - 0.5.2 Apr 6 2021
- Add HTTPS self signed cert support (Thanks to Fredrik Johansson)

Update - 0.5.0 Jan 11 2020
- Add some mime types (mjs and wasm)
- Rewrite UI using react/material-ui

Update - 0.4.8 Sept 22 2017
- Correctly set CORS headers for OPTIONS
- Add PUT method to CORS methods

Update - 0.4.7 Sept 13 2017
- Single page app mod-rewrite
- Fix a curl compatibility issue

Update - 0.4.5 Oct 25 2016
- return JSON format if specify accept header or ?json=1 parameter

Update - 0.4.4 Oct 25 2016
- Show index.htm as well as index.html

Update - 0.4.3 Sept 21 2016
- Fix FileError deprecated in dev channel

Update - 0.4.1 May 23 2016
- Added verbose logging option

Update - 0.4.0 May 6 2016
- New option to get internet address using UPNP
- Less memory usage because it can suspend when inactive and automatically resume (persistent listening socket)
- Make package much smaller (< 1/2 meg)
- Add advanced options (CORS, IPV6, static rendering)

Update - 0.3.4 March 5 2016
- Add option to prevent system sleep
- Fix for ChromeOS, background mode with accessible to other computers

Update - Feb 14 2016
- Append ?static=1 query parameter to not use JS to generate directory listings

Update - Feb 8 2016
- Add auto start option
- Fix run in background mode

Update - Dec 14 2015
- Fix decoding filenames with commas and other characters

Update - Oct 13 2015
- Sort directory list by filename
- Option to automatically show index.html

Update - Oct 1 2015
- Correctly serve utf-8 encoding for filenames in directory listing
- New user interface
- New option to run in background
- New option to listen on whole network or only local

Update - Sept 28 2015
- Stop server when window is closed
- Option to change port

Update - Jul 14
- Add option to listen on all interfaces

Update - June 4
- Allow serving to other computers (non localhost) when Chrome version >= 44

Update - May 5
- Fix utf8 encoding

Update - version 0.1.6 Sept 9 2014
- Fix directory entry listing not rendering as HTML
- Now showing directory listings with >100 files

Update - version 0.1.5 Sept 5 2014
- Migrated to new chrome.sockets API
- Improved range request handling
- Support HEAD requests

Update - July 13
- Fix to work on some Chrome engines that don't have String.prototype.startsWith

Update - May 28
- Fix for modifiedDate when serving from google drive folder

Update - Mar 3, 2014
- Small fixes for socket edge cases

Update - Feb 27, 2014 (Stability fixes)
- Fixed edge cases with connection closing
- Fixed cases where files are deleted/removed

Update - Feb 20, 2014
- It streams large files and handles range requests now
- You can now select which directory to serve files from
Read more

Source Manifest.json

{"update_url": "https://clients2.google.com/service/update2/crx", "key":"MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv7ZULSqbpKKQ1QP5Tb9f8g306PlY87OYYlXBrp7PlBHd/LJMUBDNWMCrWhpFR8sIjpvHjYipDr60j+2i7vj3PZlwbxZ7e3x+2A4cQt1LaC1PVZ6avnbsV0YMkFQi8H5f7NQiBKE2i2/Z/kB2r/DzyiUdGW63/sgjpBvgDCCMysHl3NWCnHqIOOtGD8SFlT5clgNJgVOgosFwHE4yYJDpIkvJ+nrLia9v6V/Cyc8ITEd0njvsp0q0aFJp332Ua/RPvh/m1UKcj8f3FNbaCrdScFzfKo5UNmifKLGhT377xhnvhOKuEJbyghNkPheMUquwVpTEHdRFMm7nVcLAt/kuZwIDAQAB", "name": "Web Server for Chrome", "short_name": "Web Server", "description": "A Web Server for Chrome, serves web pages from a local folder over the network, using HTTP. Runs offline.", "author": "Kyle Graehl", "version": "0.5.2", "manifest_version": 2, "offline_enabled": true, "minimum_chrome_version": "45", "app": { "background": { "scripts": ["underscore.js","encoding.js","common.js","assets/bundle.js", "log-full.js", "mime.js", "buffer.js","request.js","crypto.js","stream.js", "chromesocketxhr.js", "connection.js","webapp.js","websocket.js","handlers.js","httplib.js","upnp.js","background.js"] } }, "permissions": [ "alarms", "unlimitedStorage", "storage", "notifications",\t\t"browser", "power",\t\t"system.network", {"fileSystem":["write","directory","retainEntries"]} ],\t"optional_permissions": [ "background"\t], "sockets": { "udp": { "send": [""], "bind": [""], "multicastMembership": "" }, "tcp": { "connect": [""] }, "tcpServer": { "listen": ["*:*"] } }, "oauth2": { "client_id": "458955919969-ip5gtdesaugnbn0tcqfaf39kn72ncddl.apps.googleusercontent.com", "scopes": [ "https://www.googleapis.com/auth/chromewebstore.readonly" ] }, "icons": { "16": "images/200ok-16.png", "19": "images/200ok-19.png", "32": "images/200ok-32.png", "38": "images/200ok-38.png", "48": "images/200ok-48.png", "64": "images/200ok-64.png", "96": "images/200ok-96.png", "128": "images/200ok-128.png", "256": "images/200ok-256.png", "512": "images/200ok-512.png" }}
Read more