diff --git a/cli/gen_manifest.py b/cli/gen_manifest.py index 56a658d02..da884f9b3 100644 --- a/cli/gen_manifest.py +++ b/cli/gen_manifest.py @@ -70,7 +70,7 @@ def update_manifest(dicts_dir: str) -> bool: continue manifest["dicts"] = entries with open(manifest_path, "w", encoding="utf-8") as f: - json.dump(manifest, f, indent=2, ensure_ascii=False) + json.dump(manifest, f, ensure_ascii=False, separators=(",", ":")) f.write("\n") print(f" Manifest updated: {manifest_path} ({len(entries)} dicts)", file=sys.stderr) return True @@ -104,7 +104,7 @@ def main(): os.makedirs(os.path.dirname(args.output) or ".", exist_ok=True) with open(args.output, "w", encoding="utf-8") as f: - json.dump(manifest, f, indent=2, ensure_ascii=False) + json.dump(manifest, f, ensure_ascii=False, separators=(",", ":")) f.write("\n") print(f"\nManifest written: {args.output} ({len(entries)} dicts)", file=sys.stderr) diff --git a/data/dicts/manifest.json b/data/dicts/manifest.json index 91a540750..bcf3f7b08 100644 --- a/data/dicts/manifest.json +++ b/data/dicts/manifest.json @@ -1,67 +1 @@ -{ - "dicts": [ - { - "name": "art", - "description": "Art movements, styles, and techniques", - "version": "2026-03-24", - "tag_count": 182, - "size_mb": 0.0 - }, - { - "name": "danbooru", - "description": "Danbooru image board tags - anime/illustration focused", - "version": "2026-03-24", - "tag_count": 270669, - "size_mb": 6.4 - }, - { - "name": "e621", - "description": "e621 tags - furry/animal art focused", - "version": "2026-03-24", - "tag_count": 175681, - "size_mb": 3.9 - }, - { - "name": "idol", - "description": "Idol Complex tags - Japanese idol photography", - "version": "2026-03-24", - "tag_count": 17311, - "size_mb": 0.4 - }, - { - "name": "negative", - "description": "Common negative prompt terms", - "version": "2026-03-24", - "tag_count": 173, - "size_mb": 0.0 - }, - { - "name": "photography", - "description": "Photography terms - lens, lighting, composition, color", - "version": "2026-03-24", - "tag_count": 257, - "size_mb": 0.0 - }, - { - "name": "quality", - "description": "Quality and aesthetic meta tags", - "version": "2026-03-24", - "tag_count": 126, - "size_mb": 0.0 - }, - { - "name": "rule34", - "description": "Rule34.xxx tags - multi-fandom", - "version": "2026-03-24", - "tag_count": 317011, - "size_mb": 7.2 - }, - { - "name": "sankaku", - "description": "Sankaku Complex tags - anime/illustration with granular categories", - "version": "2026-03-24", - "tag_count": 985257, - "size_mb": 22.7 - } - ] -} +{"dicts":[{"name":"art","description":"Art movements, styles, and techniques","version":"2026-03-24","tag_count":182,"size_mb":0.0},{"name":"danbooru","description":"Danbooru image board tags - anime/illustration focused","version":"2026-03-24","tag_count":270669,"size_mb":6.4},{"name":"e621","description":"e621 tags - furry/animal art focused","version":"2026-03-24","tag_count":175681,"size_mb":3.9},{"name":"idol","description":"Idol Complex tags - Japanese idol photography","version":"2026-03-24","tag_count":17311,"size_mb":0.4},{"name":"negative","description":"Common negative prompt terms","version":"2026-03-24","tag_count":173,"size_mb":0.0},{"name":"photography","description":"Photography terms - lens, lighting, composition, color","version":"2026-03-24","tag_count":257,"size_mb":0.0},{"name":"quality","description":"Quality and aesthetic meta tags","version":"2026-03-24","tag_count":126,"size_mb":0.0},{"name":"rule34","description":"Rule34.xxx tags - multi-fandom","version":"2026-03-24","tag_count":317011,"size_mb":7.2},{"name":"sankaku","description":"Sankaku Complex tags - anime/illustration with granular categories","version":"2026-03-24","tag_count":985257,"size_mb":22.7}]} diff --git a/data/dicts/negative.json b/data/dicts/negative.json index bf5c8b2e2..dcd3445e0 100644 --- a/data/dicts/negative.json +++ b/data/dicts/negative.json @@ -1,182 +1 @@ -{ - "name": "negative", - "version": "2026-03-24", - "categories": { - "8": {"name": "meta", "color": "#6b7280"} - }, - "tags": [ - ["3d_render", 8, 0], - ["amputee", 8, 0], - ["anatomical_error", 8, 0], - ["asymmetric_eyes", 8, 0], - ["bad_anatomy", 8, 0], - ["bad_composition", 8, 0], - ["bad_fingers", 8, 0], - ["bad_hands", 8, 0], - ["bad_lighting", 8, 0], - ["bad_proportions", 8, 0], - ["bad_quality", 8, 0], - ["bad_shadow", 8, 0], - ["blank_background", 8, 0], - ["blurry", 8, 0], - ["blurry_background", 8, 0], - ["blurry_face", 8, 0], - ["blurry_foreground", 8, 0], - ["body_horror", 8, 0], - ["boring", 8, 0], - ["broken_fingers", 8, 0], - ["cgi", 8, 0], - ["childish", 8, 0], - ["chromatic_aberration", 8, 0], - ["clipped", 8, 0], - ["cloned_face", 8, 0], - ["collage", 8, 0], - ["color_banding", 8, 0], - ["compression_artifacts", 8, 0], - ["contorted", 8, 0], - ["cropped", 8, 0], - ["cross-eyed", 8, 0], - ["cut_off", 8, 0], - ["dark", 8, 0], - ["deformed", 8, 0], - ["deformed_face", 8, 0], - ["deformed_fingers", 8, 0], - ["deformed_hands", 8, 0], - ["deformed_iris", 8, 0], - ["deformed_limbs", 8, 0], - ["deformed_pupils", 8, 0], - ["dehydrated", 8, 0], - ["disfigured", 8, 0], - ["disgusting", 8, 0], - ["disproportionate", 8, 0], - ["distorted", 8, 0], - ["distorted_face", 8, 0], - ["double_image", 8, 0], - ["draft", 8, 0], - ["dull", 8, 0], - ["duplicate", 8, 0], - ["elongated", 8, 0], - ["error", 8, 0], - ["extra_arms", 8, 0], - ["extra_digits", 8, 0], - ["extra_ears", 8, 0], - ["extra_eyes", 8, 0], - ["extra_fingers", 8, 0], - ["extra_hands", 8, 0], - ["extra_head", 8, 0], - ["extra_legs", 8, 0], - ["extra_limbs", 8, 0], - ["extra_nipples", 8, 0], - ["extra_toes", 8, 0], - ["fat", 8, 0], - ["flaw", 8, 0], - ["floating_limbs", 8, 0], - ["fused_fingers", 8, 0], - ["fused_limbs", 8, 0], - ["fuzzy", 8, 0], - ["glitch", 8, 0], - ["grain", 8, 0], - ["grainy", 8, 0], - ["gross", 8, 0], - ["gross_proportions", 8, 0], - ["hazy", 8, 0], - ["helmet", 8, 0], - ["heterochromia", 8, 0], - ["hideous", 8, 0], - ["icon", 8, 0], - ["jpeg_artifacts", 8, 0], - ["kitsch", 8, 0], - ["lazy_eye", 8, 0], - ["letterbox", 8, 0], - ["logo", 8, 0], - ["long_body", 8, 0], - ["long_neck", 8, 0], - ["low_contrast", 8, 0], - ["low_quality", 8, 0], - ["low_resolution", 8, 0], - ["low_saturation", 8, 0], - ["lowres", 8, 0], - ["malformed", 8, 0], - ["malformed_hands", 8, 0], - ["malformed_limbs", 8, 0], - ["mangled", 8, 0], - ["messy", 8, 0], - ["missing_arms", 8, 0], - ["missing_ears", 8, 0], - ["missing_eyes", 8, 0], - ["missing_fingers", 8, 0], - ["missing_hands", 8, 0], - ["missing_legs", 8, 0], - ["missing_limbs", 8, 0], - ["missing_teeth", 8, 0], - ["moire", 8, 0], - ["monochrome", 8, 0], - ["morbid", 8, 0], - ["multiple_views", 8, 0], - ["mutant", 8, 0], - ["mutated", 8, 0], - ["mutated_hands", 8, 0], - ["mutation", 8, 0], - ["mutilated", 8, 0], - ["noisy", 8, 0], - ["normal_quality", 8, 0], - ["off-center", 8, 0], - ["old", 8, 0], - ["old_photo", 8, 0], - ["out_of_focus", 8, 0], - ["out_of_frame", 8, 0], - ["over-saturated", 8, 0], - ["overexposed", 8, 0], - ["oversaturated", 8, 0], - ["owes", 8, 0], - ["painting", 8, 0], - ["pale_skin", 8, 0], - ["panel", 8, 0], - ["part_of_the_head", 8, 0], - ["photoshop", 8, 0], - ["pillarbox", 8, 0], - ["pixelated", 8, 0], - ["plastic", 8, 0], - ["poorly_drawn", 8, 0], - ["poorly_drawn_face", 8, 0], - ["poorly_drawn_hands", 8, 0], - ["poorly_rendered", 8, 0], - ["portrait", 8, 0], - ["render", 8, 0], - ["semi-realistic", 8, 0], - ["signature", 8, 0], - ["simple_background", 8, 0], - ["skin_blemishes", 8, 0], - ["skin_spots", 8, 0], - ["skinny", 8, 0], - ["sloppy", 8, 0], - ["smudge", 8, 0], - ["split_image", 8, 0], - ["squint", 8, 0], - ["strabismus", 8, 0], - ["stretched", 8, 0], - ["sunglasses", 8, 0], - ["surreal", 8, 0], - ["text", 8, 0], - ["tiling", 8, 0], - ["too_dark", 8, 0], - ["too_many_fingers", 8, 0], - ["two_heads", 8, 0], - ["ugly", 8, 0], - ["unclear", 8, 0], - ["underexposed", 8, 0], - ["unfocused", 8, 0], - ["unnatural", 8, 0], - ["unnatural_pose", 8, 0], - ["unnatural_skin", 8, 0], - ["unrealistic", 8, 0], - ["unsharp", 8, 0], - ["username", 8, 0], - ["washed_out", 8, 0], - ["watermark", 8, 0], - ["web_address", 8, 0], - ["weird_colors", 8, 0], - ["worst_quality", 8, 0], - ["wrong_proportions", 8, 0] - ] -} +{"name":"negative","version":"2026-03-24","categories":{"8":{"name":"meta","color":"#6b7280"}},"tags":[["3d_render",8,0],["amputee",8,0],["anatomical_error",8,0],["asymmetric_eyes",8,0],["bad_anatomy",8,0],["bad_composition",8,0],["bad_fingers",8,0],["bad_hands",8,0],["bad_lighting",8,0],["bad_proportions",8,0],["bad_quality",8,0],["bad_shadow",8,0],["blank_background",8,0],["blurry",8,0],["blurry_background",8,0],["blurry_face",8,0],["blurry_foreground",8,0],["body_horror",8,0],["boring",8,0],["broken_fingers",8,0],["cgi",8,0],["childish",8,0],["chromatic_aberration",8,0],["clipped",8,0],["cloned_face",8,0],["collage",8,0],["color_banding",8,0],["compression_artifacts",8,0],["contorted",8,0],["cropped",8,0],["cross-eyed",8,0],["cut_off",8,0],["dark",8,0],["deformed",8,0],["deformed_face",8,0],["deformed_fingers",8,0],["deformed_hands",8,0],["deformed_iris",8,0],["deformed_limbs",8,0],["deformed_pupils",8,0],["dehydrated",8,0],["disfigured",8,0],["disgusting",8,0],["disproportionate",8,0],["distorted",8,0],["distorted_face",8,0],["double_image",8,0],["draft",8,0],["dull",8,0],["duplicate",8,0],["elongated",8,0],["error",8,0],["extra_arms",8,0],["extra_digits",8,0],["extra_ears",8,0],["extra_eyes",8,0],["extra_fingers",8,0],["extra_hands",8,0],["extra_head",8,0],["extra_legs",8,0],["extra_limbs",8,0],["extra_nipples",8,0],["extra_toes",8,0],["fat",8,0],["flaw",8,0],["floating_limbs",8,0],["fused_fingers",8,0],["fused_limbs",8,0],["fuzzy",8,0],["glitch",8,0],["grain",8,0],["grainy",8,0],["gross",8,0],["gross_proportions",8,0],["hazy",8,0],["helmet",8,0],["heterochromia",8,0],["hideous",8,0],["icon",8,0],["jpeg_artifacts",8,0],["kitsch",8,0],["lazy_eye",8,0],["letterbox",8,0],["logo",8,0],["long_body",8,0],["long_neck",8,0],["low_contrast",8,0],["low_quality",8,0],["low_resolution",8,0],["low_saturation",8,0],["lowres",8,0],["malformed",8,0],["malformed_hands",8,0],["malformed_limbs",8,0],["mangled",8,0],["messy",8,0],["missing_arms",8,0],["missing_ears",8,0],["missing_eyes",8,0],["missing_fingers",8,0],["missing_hands",8,0],["missing_legs",8,0],["missing_limbs",8,0],["missing_teeth",8,0],["moire",8,0],["monochrome",8,0],["morbid",8,0],["multiple_views",8,0],["mutant",8,0],["mutated",8,0],["mutated_hands",8,0],["mutation",8,0],["mutilated",8,0],["noisy",8,0],["normal_quality",8,0],["off-center",8,0],["old",8,0],["old_photo",8,0],["out_of_focus",8,0],["out_of_frame",8,0],["over-saturated",8,0],["overexposed",8,0],["oversaturated",8,0],["owes",8,0],["painting",8,0],["pale_skin",8,0],["panel",8,0],["part_of_the_head",8,0],["photoshop",8,0],["pillarbox",8,0],["pixelated",8,0],["plastic",8,0],["poorly_drawn",8,0],["poorly_drawn_face",8,0],["poorly_drawn_hands",8,0],["poorly_rendered",8,0],["portrait",8,0],["render",8,0],["semi-realistic",8,0],["signature",8,0],["simple_background",8,0],["skin_blemishes",8,0],["skin_spots",8,0],["skinny",8,0],["sloppy",8,0],["smudge",8,0],["split_image",8,0],["squint",8,0],["strabismus",8,0],["stretched",8,0],["sunglasses",8,0],["surreal",8,0],["text",8,0],["tiling",8,0],["too_dark",8,0],["too_many_fingers",8,0],["two_heads",8,0],["ugly",8,0],["unclear",8,0],["underexposed",8,0],["unfocused",8,0],["unnatural",8,0],["unnatural_pose",8,0],["unnatural_skin",8,0],["unrealistic",8,0],["unsharp",8,0],["username",8,0],["washed_out",8,0],["watermark",8,0],["web_address",8,0],["weird_colors",8,0],["worst_quality",8,0],["wrong_proportions",8,0]]} diff --git a/data/dicts/quality.json b/data/dicts/quality.json index 7a431fe3e..eebe772b4 100644 --- a/data/dicts/quality.json +++ b/data/dicts/quality.json @@ -1,135 +1 @@ -{ - "name": "quality", - "version": "2026-03-24", - "categories": { - "8": {"name": "meta", "color": "#6b7280"} - }, - "tags": [ - ["16k", 8, 0], - ["4k", 8, 0], - ["8k", 8, 0], - ["8k_uhd", 8, 0], - ["absurdly_detailed", 8, 0], - ["aesthetic", 8, 0], - ["amateur", 8, 0], - ["analog_photo", 8, 0], - ["anatomically_correct", 8, 0], - ["anti-aliased", 8, 0], - ["artstation", 8, 0], - ["award-winning", 8, 0], - ["award-winning_photo", 8, 0], - ["best_quality", 8, 0], - ["breathtaking", 8, 0], - ["cgi", 8, 0], - ["cinematic", 8, 0], - ["cinematic_still", 8, 0], - ["clean_lines", 8, 0], - ["crisp", 8, 0], - ["crystal_clear", 8, 0], - ["cute", 8, 0], - ["dark_fantasy", 8, 0], - ["delicate_details", 8, 0], - ["depth", 8, 0], - ["detailed", 8, 0], - ["detailed_background", 8, 0], - ["detailed_face", 8, 0], - ["detailed_hands", 8, 0], - ["detailed_skin", 8, 0], - ["detailed_texture", 8, 0], - ["deviantart", 8, 0], - ["dslr", 8, 0], - ["dslr_photo", 8, 0], - ["editorial_photo", 8, 0], - ["elaborate", 8, 0], - ["elegant", 8, 0], - ["epic", 8, 0], - ["epic_composition", 8, 0], - ["ethereal", 8, 0], - ["exquisite_detail", 8, 0], - ["extremely_detailed", 8, 0], - ["fashion_photo", 8, 0], - ["filmic", 8, 0], - ["fine_art", 8, 0], - ["fine_detail", 8, 0], - ["flat_design", 8, 0], - ["full_color", 8, 0], - ["gorgeous", 8, 0], - ["hdr", 8, 0], - ["high_definition", 8, 0], - ["high_detail", 8, 0], - ["high_fidelity", 8, 0], - ["high_quality", 8, 0], - ["high_resolution", 8, 0], - ["highest_quality", 8, 0], - ["highly_detailed", 8, 0], - ["hyper-detailed", 8, 0], - ["hyper-realistic", 8, 0], - ["hyperdetailed", 8, 0], - ["hyperrealistic", 8, 0], - ["illustration", 8, 0], - ["immersive", 8, 0], - ["intricate", 8, 0], - ["intricate_details", 8, 0], - ["lifelike", 8, 0], - ["lossless", 8, 0], - ["lush", 8, 0], - ["majestic", 8, 0], - ["masterful", 8, 0], - ["masterpiece", 8, 0], - ["masterwork", 8, 0], - ["meticulous", 8, 0], - ["moody", 8, 0], - ["national_geographic", 8, 0], - ["octane_render", 8, 0], - ["opulent", 8, 0], - ["ornate", 8, 0], - ["painterly", 8, 0], - ["perfect_anatomy", 8, 0], - ["perfect_composition", 8, 0], - ["perfect_face", 8, 0], - ["perfect_hands", 8, 0], - ["perfect_lighting", 8, 0], - ["photo-realistic", 8, 0], - ["photographic", 8, 0], - ["photography", 8, 0], - ["photojournalism", 8, 0], - ["photorealistic", 8, 0], - ["pixel_perfect", 8, 0], - ["polished", 8, 0], - ["portfolio", 8, 0], - ["precise", 8, 0], - ["production_quality", 8, 0], - ["professional", 8, 0], - ["professional_photo", 8, 0], - ["raw_photo", 8, 0], - ["realistic", 8, 0], - ["refined", 8, 0], - ["render", 8, 0], - ["resolution", 8, 0], - ["sharp", 8, 0], - ["sharp_focus", 8, 0], - ["smooth", 8, 0], - ["soft_render", 8, 0], - ["sophisticated", 8, 0], - ["stunning", 8, 0], - ["stylized", 8, 0], - ["subsurface_scattering", 8, 0], - ["textured", 8, 0], - ["trending_on_artstation", 8, 0], - ["uhd", 8, 0], - ["ultra-detailed", 8, 0], - ["ultra-realistic", 8, 0], - ["ultra_detailed", 8, 0], - ["ultra_hd", 8, 0], - ["ultra_high_resolution", 8, 0], - ["ultra_realistic", 8, 0], - ["ultra_sharp", 8, 0], - ["unreal_engine", 8, 0], - ["unreal_engine_5", 8, 0], - ["very_detailed", 8, 0], - ["vibrant", 8, 0], - ["vivid", 8, 0], - ["volumetric", 8, 0], - ["vray", 8, 0] - ] -} +{"name":"quality","version":"2026-03-24","categories":{"8":{"name":"meta","color":"#6b7280"}},"tags":[["16k",8,0],["4k",8,0],["8k",8,0],["8k_uhd",8,0],["absurdly_detailed",8,0],["aesthetic",8,0],["amateur",8,0],["analog_photo",8,0],["anatomically_correct",8,0],["anti-aliased",8,0],["artstation",8,0],["award-winning",8,0],["award-winning_photo",8,0],["best_quality",8,0],["breathtaking",8,0],["cgi",8,0],["cinematic",8,0],["cinematic_still",8,0],["clean_lines",8,0],["crisp",8,0],["crystal_clear",8,0],["cute",8,0],["dark_fantasy",8,0],["delicate_details",8,0],["depth",8,0],["detailed",8,0],["detailed_background",8,0],["detailed_face",8,0],["detailed_hands",8,0],["detailed_skin",8,0],["detailed_texture",8,0],["deviantart",8,0],["dslr",8,0],["dslr_photo",8,0],["editorial_photo",8,0],["elaborate",8,0],["elegant",8,0],["epic",8,0],["epic_composition",8,0],["ethereal",8,0],["exquisite_detail",8,0],["extremely_detailed",8,0],["fashion_photo",8,0],["filmic",8,0],["fine_art",8,0],["fine_detail",8,0],["flat_design",8,0],["full_color",8,0],["gorgeous",8,0],["hdr",8,0],["high_definition",8,0],["high_detail",8,0],["high_fidelity",8,0],["high_quality",8,0],["high_resolution",8,0],["highest_quality",8,0],["highly_detailed",8,0],["hyper-detailed",8,0],["hyper-realistic",8,0],["hyperdetailed",8,0],["hyperrealistic",8,0],["illustration",8,0],["immersive",8,0],["intricate",8,0],["intricate_details",8,0],["lifelike",8,0],["lossless",8,0],["lush",8,0],["majestic",8,0],["masterful",8,0],["masterpiece",8,0],["masterwork",8,0],["meticulous",8,0],["moody",8,0],["national_geographic",8,0],["octane_render",8,0],["opulent",8,0],["ornate",8,0],["painterly",8,0],["perfect_anatomy",8,0],["perfect_composition",8,0],["perfect_face",8,0],["perfect_hands",8,0],["perfect_lighting",8,0],["photo-realistic",8,0],["photographic",8,0],["photography",8,0],["photojournalism",8,0],["photorealistic",8,0],["pixel_perfect",8,0],["polished",8,0],["portfolio",8,0],["precise",8,0],["production_quality",8,0],["professional",8,0],["professional_photo",8,0],["raw_photo",8,0],["realistic",8,0],["refined",8,0],["render",8,0],["resolution",8,0],["sharp",8,0],["sharp_focus",8,0],["smooth",8,0],["soft_render",8,0],["sophisticated",8,0],["stunning",8,0],["stylized",8,0],["subsurface_scattering",8,0],["textured",8,0],["trending_on_artstation",8,0],["uhd",8,0],["ultra-detailed",8,0],["ultra-realistic",8,0],["ultra_detailed",8,0],["ultra_hd",8,0],["ultra_high_resolution",8,0],["ultra_realistic",8,0],["ultra_sharp",8,0],["unreal_engine",8,0],["unreal_engine_5",8,0],["very_detailed",8,0],["vibrant",8,0],["vivid",8,0],["volumetric",8,0],["vray",8,0]]}