Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision Next revisionBoth sides next revision | ||
| google-season-of-docs [2020/05/03 20:44] – created aparcar1 | google-season-of-docs [2020/06/08 14:58] – added batman and maint/upgrade ops for remote routers steve-newcomb | ||
|---|---|---|---|
| Line 5: | Line 5: | ||
| **The link is added within the application and so this site shouldn' | **The link is added within the application and so this site shouldn' | ||
| - | ===== Project Ideas ===== | + | ====== Project Ideas ====== |
| - | WIP | + | ===== Project 1: Documentation for OpenWrt components ===== |
| + | |||
| + | The OpenWrt system is based on several core components, all developed in different code repositories. Each component has documentation that is mainly targeted at OpenWrt developers, but can also be used by " | ||
| + | |||
| + | The goal of the project is to improve documentation of OpenWrt components by making it more consistent and useful: | ||
| + | |||
| + | - choose a documentation system (mkdocs, sphinx...) that will be applied consistently to all components | ||
| + | - transfer all documentation related to each component directly into the code repository of the component | ||
| + | - setup a system that builds all components documentation and makes the result easily available in a single place | ||
| + | - reorganize / improve each component documentation to improve consistency and readability | ||
| + | |||
| + | It is not required to have a deep technical knowledge of the components. | ||
| + | |||
| + | Having both code and documentation in the same repository has two big advantages over the current approach: | ||
| + | |||
| + | * Existing developers can use the same workflow to update and review documentation as they use for code. | ||
| + | * New developers find latest documentation next to the code, instead of finding it on some external website. | ||
| + | |||
| + | |||
| + | === Related material === | ||
| + | |||
| + | * [[commit>? | ||
| + | * [[: | ||
| + | * [[: | ||
| + | |||
| + | ===== Project 2: Refresh documentation for device installations ===== | ||
| + | |||
| + | Device pages, important for users, are often very similar but still vary in | ||
| + | steps and formulation, | ||
| + | varying structure complicates the user. A template based page generated as | ||
| + | used by LineageOS device wiki[4] allows a consistent structure while allowing | ||
| + | notes for special cases. | ||
| + | |||
| + | This project idea proposes to unify existing device documentations as much as | ||
| + | possible and render them via a template engine. Ideally this reduces the work | ||
| + | of maintaining device documentation, | ||
| + | easier to translate installation guides into multiple languages. | ||
| + | |||
| + | In collaboration with wiki maintainers popular devices should be determinded | ||
| + | to form a page prioritization list. | ||
| + | |||
| + | === Related material === | ||
| + | |||
| + | * An existing proof of concept for device documentation exists https:// | ||
| + | |||
| + | |||
| + | ===== Project 3: Refresh and refactor web interface documentation ===== | ||
| + | |||
| + | The wiki offers guides on how to use the LuCI, the OpenWrt web interface, for | ||
| + | common use cases, which is great because it's the most likely way for basic | ||
| + | users to interact with their routers. | ||
| + | |||
| + | However this could get some extra love: Partly pictures are missing, pictures | ||
| + | are outdated and/or missing from the web interface overview. This could be | ||
| + | refreshed and put in nice overview, maybe even even create click-through videos. | ||
| + | |||
| + | Ideally use/create tools that automatically click things in UIs and make | ||
| + | screenshots and thereby reproduce the documentation. This could make the | ||
| + | documentation easily future proof and translatable. | ||
| + | |||
| + | === Related material === | ||
| + | |||
| + | * The existing LuCI documentation at https:// | ||
| + | |||
| + | |||
| + | ===== Project 4: Showcase OpenWrt features and use-cases ===== | ||
| + | |||
| + | OpenWrt has a very wide ecosystem of packages that allow many different use-cases going beyond the simple "home router" | ||
| + | |||
| + | The idea is to " | ||
| + | |||
| + | The expected benefits for OpenWrt users are: increased awareness of OpenWrt features, easier access to advanced setups. | ||
| + | |||
| + | Some examples of features and use-cases to showcase: | ||
| + | |||
| + | * detailed monitoring of LAN traffic with nlbwmon or vnstat | ||
| + | * setting up a mobile connection (4G) as backup | ||
| + | * DNS filtering, similar to Pi-hole | ||
| + | * decentralized Wi-Fi controller between several Wi-Fi access points with Dawn | ||
| + | * local file-sharing setup (USB disk shared with Samba/ | ||
| + | * VPN client/ | ||
| + | * VPN server: connect remote clients to your LAN network | ||
| + | * improving performance of low-end Internet connections by using SQM to avoid bufferbloat | ||
| + | * simple multi-WAN setup with mwan3 | ||
| + | * advanced multi-WAN setup using MPTCP/ | ||
| + | * run applications in LXC containers | ||
| + | * community mesh network using B.A.T.M.A.N. | ||
| + | * maintenance/ | ||
| + | |||
| + | === Related material === | ||
| + | |||
| + | * [[docs: | ||
| + | * [[docs: | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[docs: | ||
| + | * [[docs: | ||
| + | * [[https:// | ||
| + | |||
| + | ===== Project 5: Improve first-time user experience ===== | ||
| + | |||
| + | OpenWrt can be challenging for new users: is my hardware supported? which version of OpenWrt should I use? can i use snapshots? how do I install OpenWrt? what are all these strange " | ||
| + | |||
| + | The idea of the project is to identify the main hurdles encountered by first-time users, and solve these hurdles to improve the first-time user experience: | ||
| + | |||
| + | * if the necessary resources already exist (e.g. Table of Hardware, quick start page), make them more visible or improve them | ||
| + | * if the necessary resources don't exist, create them | ||
| + | |||
| + | The proposed solution could include a " | ||
| + | |||
| + | === Related material === | ||
| + | |||
| + | * [[supported_devices|Supported devices / Table of Hardware]] | ||
| + | * [[downloads|Download page]] | ||
| + | * [[docs: | ||
| + | * [[docs: | ||
| + | * See also Project 2 (for installation) and Project 3 (for basic web interface usage) | ||