Merge branch 'master' of github.com:mwarning/yet_another_firmware_selector
[web/firmware-selector-openwrt-org.git] / README.md
1 # Yet Another Firmware Selector
2
3 A simple OpenWrt firmware selector using autocompletion. Uses plain
4 HTML/CSS/JavaScript. Checkout the [Demo](https://mwarning.github.io/yet_another_firmware_selector/).
5
6 ![image](misc/screenshot.png)
7
8
9 ## Run
10
11 * Download repository and change directory
12 * Start webserver (e.g. `python3 -m http.server`)
13 * Go to `http://localhost:8000` in your web browser
14
15 Configure with [config.js](config.js).
16
17 ## Update Database
18
19 The `names-<version>.json` files are based on JSON files created by OpenWrt
20 (master): `Global build settings ---> [*] Create JSON info files per build
21 image`.
22
23 A [Python script](misc/collect.py) is included to merge the JSON files:
24 `./collect.py bin/ --url
25 'https://downloads.openwrt.org/releases/{version}/targets/{target}' >
26 names-test.json`.
27
28 For the OpenWrt 18.06 and 19.07 releases, you need to patch OpenWrt to output JSON files for collect.py (commit [openwrt/openwrt@881ed09](https://github.com/openwrt/openwrt/commit/881ed09ee6e23f6c224184bb7493253c4624fb9f)).
29
30 ## Similar Projects
31
32 - [Gluon Firmware Selector](https://github.com/freifunk-darmstadt/gluon-firmware-selector): Original source of this project for images generated by [Gluon](https://github.com/freifunk-gluon/), now with pictures.
33 - [Freifunk Hennef Firmware Downloader](https://github.com/Freifunk-Hennef/ffhef-fw-dl): Similar to the project above, but PHP based.
34 - [LibreMesh Chef](https://github.com/libremesh/chef/): Allows to select configurations.
35 - [GSoC Firmware Selector](https://github.com/sudhanshu16/openwrt-firmware-selector/): Result of the GSoC
36 - [FFB Firmware Selector](https://github.com/freifunk-bielefeld/firmware-selector): Build for Freifunk Bielefeld