[DOCS] Overhaul new-user onboarding, home page, and upload flow (#2347)
Getting started: - New 15-minute Getting Started guide featuring the two most popular tracks (BLE on esp32dev-ble, RF on lilygo-rtl_433), with broker setup and a verification step - Sidebar restructured around the new-user journey; upload options numbered by ease; Gitpod upload method removed Home page: - VitePress hero with clear actions, larger hero image - How-it-works pipeline diagram shared as a component (responsive via container queries), use-case grid, bigger video tiles without the image lightbox, refreshed press coverage list, functions pills - Support section pointing to Theengs Bridge and github.com/sponsors/1technophile Upload flow: - Decision-oriented upload landing page (journey strip, method cards, comparison table) - Pre-flight checklist and driver troubleshooting on the web installer - Guided environment picker (bridge + hardware wizard) replacing the filter chips, with manifest-verified recommendations - Post-flash next-steps card linking to the portal and verification Board images: - custom_img key in environments.ini and board photos for all web-flashable environments (licenses recorded); private prod_env.ini environments excluded from boards-info.json Corrections: - RF frequency coverage stated as 433/315/868/915MHz - Removed references to the retired compatible.openmqttgateway.com site (BLE list is decoder.theengs.io), the discontinued Theengs Plug, and the private sponsor forum Claude-Session: https://claude.ai/code/session_01TYysQW8tpmt1dWWuzKhTLi Co-authored-by: Florian <1technophile@users.noreply.github.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
67 files changed
+1142
-412
No files matched your search
+17
-1
@@ -214,11 +214,27 @@ function collectBoardsInformations(sections, { includeTests = false } = {}) {
|
||||
return rows;
|
||||
}
|
||||
|
||||
// pio project config resolves extra_configs, which pulls in user-specific
|
||||
// files like prod_env.ini; only environments declared in environments.ini
|
||||
// belong in the published boards list.
|
||||
function publicEnvironmentNames() {
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const ini = fs.readFileSync(path.resolve(__dirname, '..', 'environments.ini'), 'utf8');
|
||||
const names = new Set();
|
||||
for (const match of ini.matchAll(/^\[env:([^\]]+)\]/gm)) {
|
||||
names.add(match[1].trim());
|
||||
}
|
||||
return names;
|
||||
}
|
||||
|
||||
function loadBoardsInfo(options = {}) {
|
||||
const { includeTests = false } = options;
|
||||
const config = rowConfigFromPlatformIO();
|
||||
const sections = convertJsonToSections(config);
|
||||
return collectBoardsInformations(sections, { includeTests });
|
||||
const rows = collectBoardsInformations(sections, { includeTests });
|
||||
const publicEnvs = publicEnvironmentNames();
|
||||
return rows.filter(row => publicEnvs.has(row.Environment));
|
||||
}
|
||||
|
||||
function ensureDir(dir) {
|
||||
|
||||
Reference in new issue
Block a user