Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/etherdream/web2img
Bundle web files into a single image
https://github.com/etherdream/web2img
bundle cdn imagehosting serviceworker web
Last synced: 14 days ago
JSON representation
Bundle web files into a single image
- Host: GitHub
- URL: https://github.com/etherdream/web2img
- Owner: EtherDream
- Created: 2021-09-05T09:24:44.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-07-31T10:37:06.000Z (over 1 year ago)
- Last Synced: 2024-10-10T16:41:51.313Z (about 1 month ago)
- Topics: bundle, cdn, imagehosting, serviceworker, web
- Language: JavaScript
- Homepage: https://etherdream.github.io/web2img/
- Size: 173 KB
- Stars: 1,269
- Watchers: 12
- Forks: 52
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Web2Img
Web2Img is a tool to bundle your web files into a single image, and extract them via Service Worker at runtime.
You can use image hosting sites as free CDNs to save bandwidth costs.
![intro.png](assets/img/intro.png)
## Tool
Try It Online: https://etherdream.github.io/web2img/
OR: https://etherdream.com/web2img/ (latest)
https://user-images.githubusercontent.com/1072787/132183995-b342c3a8-1408-4819-923e-2d25fde419be.mp4
## Example
Demo: [https://fanhtml5.github.io](https://fanhtml5.github.io)
Target Files: https://github.com/fanhtml5/fanhtml5.github.io (only 2 files)
Source Files: https://github.com/fanhtml5/test-site
## FAQ
Q: What if JavaScript is disabled?
A: Unfortunately, the page can't be displayed. You can add a fallback in `404.html` such as:
```html
```
----
Q: What if the browser doesn't support Service Worker?
A: Same as above. The program will read the contents of `` and render them.
----
Q: Is free CDN safe?
A: Yes, the program will verify the data integrity.
----
Q: Is free CDN stable?
A: Not sure, but you can provide multiple URLs to improve stability.
----
Q: Can any free CDN be used?
A: No, CDN must enable CORS, allow empty referrer and "null" origin (or real value).
----
Q: Would it be better to optimize the image before uploading?
A: If the server will re-encode the image, it makes no difference.
----
Q: Why use `404.html`?
A: It's an easy way to intercept any path.
----
Q: How to update files?
A: Just overwrite `x.js`, the client polls this file every 2 minutes.
----
Q: Will new features be added?
A: This project is just an experiment, there is a new project named [freecdn](https://github.com/EtherDream/freecdn) which is much more powerful. (better docs will be released soon)
## License
MIT