Fix up app metadata - spaces/uppercase in tags meant these apps wouldn't have appeared in some searches

master
Gordon Williams 2025-02-04 12:38:56 +00:00
parent 0208268bf2
commit 9b224171e1
36 changed files with 47 additions and 47 deletions

View File

@ -271,7 +271,7 @@ and which gives information about the app for the Launcher.
// 'locale' - provides 'locale' library for language-specific date/distance/etc
// (a version of 'locale' is included in the firmware)
// 'defaultconfig' - a set of apps that will can be installed and will wipe out all previously installed apps
"tags": "", // comma separated tag list for searching
"tags": "", // comma separated tag list for searching (don't include uppercase or spaces)
// common types are:
// 'clock' - it's a clock
// 'widget' - it is (or provides) a widget

View File

@ -5,7 +5,7 @@
"version": "0.02",
"description": "A UI/UX for espruino smartwatches, displays dinamically calc. x,y coordinates.",
"icon": "app.png",
"tags": "Color,input,buttons,touch,UI",
"tags": "color,input,buttons,touch,ui",
"supports": ["BANGLEJS"],
"readme": "README.md",
"screenshots": [{"url":"UI4swatch_icon.png"},{"url":"UI4swatch_s1.png"}],

View File

@ -4,7 +4,7 @@
"version": "0.04",
"description": "Wrist mounted ukulele chords",
"icon": "app.png",
"tags": "uke, chords",
"tags": "uke,chords",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -6,7 +6,7 @@
"description": "A fully featured watch face with a playable game on the side.",
"readme":"README.md",
"type": "clock",
"tags": "clock, game",
"tags": "clock,game",
"supports" : ["BANGLEJS2"],
"storage": [
{"name":"bblobface.app.js","url":"app.js"},

View File

@ -5,7 +5,7 @@
"version": "0.01",
"description": "Aerobic fitness test created by Léger & Lambert",
"icon": "beeptest.png",
"tags": "Health",
"tags": "health",
"supports": ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -6,7 +6,7 @@
"description": "Bangle version of a popular word search game",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"tags": "game, text",
"tags": "game,text",
"storage": [
{"name":"bordle.app.js","url":"bordle.app.js"},
{"name":"wordlencr.txt","url":"wordlencr.txt"},

View File

@ -6,7 +6,7 @@
"description": "Show the current and upcoming events synchronized from Gadgetbridge",
"icon": "calclock.png",
"type": "clock",
"tags": "clock agenda",
"tags": "clock,agenda",
"supports": ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -6,7 +6,7 @@
"icon": "app.png",
"version": "0.13",
"type": "clock",
"tags": "clock, weather, cassio, retro",
"tags": "clock,weather,cassio,retro",
"supports": ["BANGLEJS2"],
"allow_emulator": true,
"readme": "README.md",

View File

@ -3,7 +3,7 @@
"version":"0.01",
"description": "Record time active on a task, course, work or anything really.",
"icon": "app.png",
"tags": "logging, record, work, tasks",
"tags": "logging,record,work,tasks",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"screenshots" : [ { "url":"dump.png"}, { "url":"dump1.png" }, { "url":"dump2.png" }, { "url":"dump3.png" }, { "url":"dump4.png" }, { "url":"dump5.png" }, { "url":"dump6.png" } ],

View File

@ -5,7 +5,7 @@
"version": "0.03",
"description": "Displays RGB565 and RGB888 colors, its name and code in screen.",
"icon": "app.png",
"tags": "Color,input,buttons,touch,UI",
"tags": "color,input,buttons,touch,ui",
"supports": ["BANGLEJS"],
"readme": "README.md",
"storage": [

View File

@ -3,7 +3,7 @@
"version":"0.01",
"description": "Delay the locking of the screen to 5 seconds after the backlight turns off.",
"icon": "app.png",
"tags": "settings, configuration, backlight, touchscreen, screen",
"tags": "settings,configuration,backlight,touchscreen,screen",
"type": "bootloader",
"supports" : ["BANGLEJS2"],
"readme": "README.md",

View File

@ -6,7 +6,7 @@
"icon": "app.png",
"version": "0.01",
"type": "clock",
"tags": "clock, weather, dino, trex, chrome",
"tags": "clock,weather,dino,trex,chrome",
"supports": ["BANGLEJS2"],
"allow_emulator": true,
"readme": "README.md",

View File

@ -6,7 +6,7 @@
"version": "0.02",
"description": "Follow The Recipe (FTR) is a bangle.js app to follow a recipe step by step",
"type": "app",
"tags": "tool, tools, cook",
"tags": "tool,tools,cook",
"supports": [
"BANGLEJS2"
],

View File

@ -5,7 +5,7 @@
"description": "A simple way to initiate Google Assistant on Android. Intents must be enabled in Gadgetbridge.",
"icon": "app.png",
"type": "app",
"tags": "tool, voice, tasker",
"tags": "tool,voice,tasker",
"supports": ["BANGLEJS","BANGLEJS2"],
"allow_emulator": false,
"storage": [

View File

@ -4,7 +4,7 @@
"version":"0.01",
"description": "Disconnect from your android device by running this app. The app will forward you to your clock face immediately after triggering the command. (Gadgetbridge nightly required until version 82 is released)",
"icon": "app.png",
"tags": "android, gadgetbridge, bluetooth, bt",
"tags": "android,gadgetbridge,bluetooth,bt",
"supports" : ["BANGLEJS", "BANGLEJS2"],
"storage": [
{"name":"gbdiscon.app.js","url":"app.js"},

View File

@ -3,7 +3,7 @@
"version": "0.03",
"description": "This app will provide you with on course data to support your golf game!",
"icon": "golfview.png",
"tags": "outdoors, gps",
"tags": "outdoors,gps",
"allow_emulator": true,
"supports" : ["BANGLEJS2"],
"readme": "README.md",

View File

@ -4,7 +4,7 @@
"version": "0.03",
"description": "Wrist mounted guitar chords",
"icon": "app.png",
"tags": "guitar, chords",
"tags": "guitar,chords",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -5,7 +5,7 @@
"description": "Songs lyrics and guitar chords",
"icon": "app.png",
"screenshots": [{"url": "screenshot.png"}],
"tags": "guitar, song, lyrics, chords",
"tags": "guitar,song,lyrics,chords",
"supports" : ["BANGLEJS2"],
"interface": "manage_songs.html",
"readme": "README.md",

View File

@ -5,7 +5,7 @@
"icon": "app.png",
"version":"0.01",
"description": "Interval Timer for workouts, HIIT, or whatever else.",
"tags": "timer, interval, hiit, workout",
"tags": "timer,interval,hiit,workout",
"readme":"README.md",
"supports":["BANGLEJS2"],
"storage": [

View File

@ -5,7 +5,7 @@
"version": "0.04",
"description": "A clock that displays the great wave of kanagawa (image from wikipedia) with seconds in active mode.",
"icon": "app.png",
"tags": "clock, kanagawa, wave",
"tags": "clock,kanagawa,wave",
"type": "clock",
"supports" : ["BANGLEJS2"],
"readme": "README.md",

View File

@ -6,7 +6,7 @@
"description": "A smart and simple calculator for Ohm's Law calculations, designed specifically for Bangle.js 2 smartwatches. Handles voltage, current, resistance, and power calculations with smart logic to prevent invalid inputs.",
"icon": "app.png",
"type": "app",
"tags": "calculator, utilities, electric",
"tags": "calculator,utilities,electric",
"supports": ["BANGLEJS2"],
"readme": "README.md",
"allow_emulator": true,

View File

@ -8,7 +8,7 @@
"dependencies": {"mylocation":"app","weather":"app"},
"screenshots": [{"url":"screenshot_pastel.png"}, {"url":"weather_icons.png"}],
"type": "clock",
"tags": "clock, weather, tool",
"tags": "clock,weather,tool",
"supports": ["BANGLEJS","BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -4,7 +4,7 @@
"version": "0.05",
"description": "Simple app to power off your Bangle.js",
"icon": "app.png",
"tags": "tool, poweroff, shutdown",
"tags": "tool,poweroff,shutdown",
"supports" : ["BANGLEJS", "BANGLEJS2"],
"readme": "README.md",
"allow_emulator": true,

View File

@ -5,7 +5,7 @@
"version": "0.16",
"description": "Tap or swipe left/right/up/down on your clock face to launch up to five apps of your choice. Configurations can be accessed through Settings->Apps.",
"type": "bootloader",
"tags": "tools, system",
"tags": "tools,system",
"readme": "README.md",
"supports": ["BANGLEJS2"],
"storage": [

View File

@ -10,7 +10,7 @@
{"url": "screenshot-2.png"}
],
"description": "An intuitive, easy-to-use app that aids in the interpretation of resistor color codes and calculation of resistance values.",
"tags": "app, tool, electricity, ohms, converter",
"tags": "app,tool,electricity,ohms,converter",
"supports": ["BANGLEJS2"],
"readme": "README.md",
"allow_emulator": true,

View File

@ -6,7 +6,7 @@
"description": "A keyboard on your wrist! Swipe right for space, left for delete.",
"icon": "app.png",
"allow_emulator": true,
"tags": "tools, keyboard, text, scribble",
"tags": "tools,keyboard,text,scribble",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -5,7 +5,7 @@
"description": "A basic implementation of the famous consice workout",
"icon": "icon.png",
"type":"app",
"tags": "Training, Workout",
"tags": "training,workout",
"supports": ["BANGLEJS2"],
"readme": "README.md",
"allow_emulator":true,

View File

@ -5,7 +5,7 @@
"description": "Watch face in the style of Casio Prototype Space Resist",
"icon": "app-icon.png",
"type": "clock",
"tags": "clock, casio, retro",
"tags": "clock,casio,retro",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -5,7 +5,7 @@
"description": "Navigate between clock and launcher with Swipe action",
"icon": "swiperclocklaunch.png",
"type": "bootloader",
"tags": "tools, system",
"tags": "tools,system",
"supports": ["BANGLEJS", "BANGLEJS2"],
"storage": [
{"name":"swiperclocklaunch.boot.js","url":"boot.js"},

View File

@ -7,7 +7,7 @@
"description": "Tamagotchi WatchApp",
"icon": "app.png",
"allow_emulator": true,
"tags": "clock, watch, virtual pet",
"tags": "clock,watch,virtualpet",
"supports": [
"BANGLEJS2"
],

View File

@ -5,7 +5,7 @@
"version": "0.08",
"description": "App to test the bangle.js input interface. It displays the user action in text, circle buttons or on/off switch UI elements.",
"icon": "app.png",
"tags": "input,interface,buttons,touch,UI",
"tags": "input,interface,buttons,touch,ui",
"supports": ["BANGLEJS"],
"readme": "README.md",
"storage": [

View File

@ -7,7 +7,7 @@
"description": "Conveniently record a series of date/time stamps",
"screenshots": [ {"url": "screenshot.png" } ],
"readme": "README.md",
"tags": "timestamp, log",
"tags": "timestamp,log",
"supports": ["BANGLEJS2"],
"interface": "interface.html",
"storage": [

View File

@ -6,7 +6,7 @@
"description": "Draw stuff in your wrist",
"icon": "app.png",
"allow_emulator": true,
"tags": "tools, keyboard, text, scribble",
"tags": "tools,keyboard,text,scribble",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -8,7 +8,7 @@
"dependencies": {"weather":"app"},
"screenshots": [{"url":"screens/screen1.png"}],
"type": "clock",
"tags": "clock, weather",
"tags": "clock,weather",
"supports": ["BANGLEJS","BANGLEJS2"],
"allow_emulator": true,
"readme": "README.md",

View File

@ -5,7 +5,7 @@
"description": "Lock a Bangle 2 screen by tapping a widget.",
"icon": "widget.png",
"type": "widget",
"tags": "widget, screenlock",
"tags": "widget,screenlock",
"supports" : ["BANGLEJS2"],
"readme": "README.md",
"storage": [

View File

@ -207,10 +207,10 @@ apps.forEach((app,appIdx) => {
if (!app.name) ERROR(`App ${app.id} has no name`, {file:metadataFile});
var isApp = !app.type || app.type=="app";
var appTags = app.tags ? app.tags.split(",") : [];
/*if (appTags.some(tag => tag!=tag.trim()))
if (appTags.some(tag => tag!=tag.trim()))
WARN(`App ${app.id} 'tag' list contains whitespace ("${app.tags}")`, {file:metadataFile});
if (appTags.some(tag => tag!=tag.toLowerCase()))
WARN(`App ${app.id} 'tag' list contains uppercase ("${app.tags}")`, {file:metadataFile});*/
WARN(`App ${app.id} 'tag' list contains uppercase ("${app.tags}")`, {file:metadataFile});
if (app.name.length>20 && !app.shortName && isApp) ERROR(`App ${app.id} has a long name, but no shortName`, {file:metadataFile});
if (app.type && !METADATA_TYPES.includes(app.type))
ERROR(`App ${app.id} 'type' is one one of `+METADATA_TYPES, {file:metadataFile});