v0.4.22
moeru-ai/airiv0.4.22Apr 7, 2025by nekomeowww
AI Summary
A major UI overhaul featuring a motion mapping editor, theme customization, and Twitter integration, along with file system support via Drizzle and DuckDB-WASM.
Key Highlights
- Implemented motion mapping editor
- Added custom primary colors and theme presets
- Twitter services integration (timeline, profile, tweet)
- File system support with Drizzle and DuckDB-WASM
Breaking Changes
- Switched from typeschema/providers to xsschema/ext-providers
New Features
- Motion mapping editor
- Custom colors and theme presets
- Twitter integration
- File system support
- Storyboard integration
Full Release Notes
## What's Changed * fix(duckdb): try fix typecheck by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/39 * chore(workspace): use yaml anchors for catalog version by @kwaa in https://github.com/moeru-ai/airi/pull/40 * feat(stage-web): load and save live2d model by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/41 * style: rebrand with newly designed logo by @nekomeowww in https://github.com/moeru-ai/airi/pull/44 * feat: x services by @luoling8192 in https://github.com/moeru-ai/airi/pull/43 * refactor(stage-ui): motion mapping editor by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/45 * fix(stage-ui): type errors in Stage.vue by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/46 * chore(deps): bump xsai to 0.1.2 by @kwaa in https://github.com/moeru-ai/airi/pull/47 * docs: fix a code error in DevLog-2025.03.05 by @LittleSound in https://github.com/moeru-ai/airi/pull/48 * fix(locales): fix prompt line break by @kwaa in https://github.com/moeru-ai/airi/pull/49 * refactor!: use xsschema/ext-providers instead of typeschema/providers by @kwaa in https://github.com/moeru-ai/airi/pull/50 * feat(stage-web): add dotted background to settings buttons by @sumimakito in https://github.com/moeru-ai/airi/pull/51 * fix(stage-web): add back button to settings root by @sumimakito in https://github.com/moeru-ai/airi/pull/52 * fix(stage-web): wave animation by @sumimakito in https://github.com/moeru-ai/airi/pull/54 * feat(stage): custom primary colors by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/53 * perf: use nolyfill to reduce install size by @kwaa in https://github.com/moeru-ai/airi/pull/56 * perf: use feaxios instead of axios by @kwaa in https://github.com/moeru-ai/airi/pull/57 * refactor(stage-web): eliminate the need of raf and use pure css by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/55 * fix(stage-web): language select is not clickable by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/58 * feat(stage-web): make the color theme slider more intuitive by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/59 * fix(stage-web): text colors by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/60 * feat(stage-web): make the logo also follow the color theme by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/61 * chore(stage-web): make the live2d shadow also follow theme color by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/63 * feat(stage-web): I Want It Dynamic! by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/64 * refactor(stage-web): eliminate the need for resize check by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/65 * fix(ui-transitions): the outermost div should be fixed by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/66 * chore(stage-web): make the buttons follow the color scheme by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/67 * fix(docs): absolute path should not include by @nekomeowww in https://github.com/moeru-ai/airi/pull/68 * feat(stage-tamagotchi): apply dynamic theme color to tamagotchi by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/69 * feat(stage-ui): integrate histoire storyboard by @sumimakito in https://github.com/moeru-ai/airi/pull/70 * docs(README.zh-CN.md): update zh-CN document, changed some infml uses… by @qyl27 in https://github.com/moeru-ai/airi/pull/71 * fix(stage-web): fix textarea behaviors by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/72 * fix(stage-ui): unspeech voice id by @luoling8192 in https://github.com/moeru-ai/airi/pull/73 * feat(stage-web): theme presets by @luoling8192 in https://github.com/moeru-ai/airi/pull/74 * fix(stage-web): reduce saturation by @luoling8192 in https://github.com/moeru-ai/airi/pull/75 * feat(stage-web): tooltip over colors by @luoling8192 in https://github.com/moeru-ai/airi/pull/76 * style: color bar by @luoling8192 in https://github.com/moeru-ai/airi/pull/77 * docs(docs): new DevLog for 2025.03.08 ~ 2025.03.10 by @nekomeowww in https://github.com/moeru-ai/airi/pull/78 * perf(favicon): optimize size by @kwaa in https://github.com/moeru-ai/airi/pull/79 * feat(favicon): support dark mode by @kwaa in https://github.com/moeru-ai/airi/pull/80 * fix(motion-map): cannot export by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/81 * feat(twitter-services): timeline & profile support by @luoling8192 in https://github.com/moeru-ai/airi/pull/82 * feat(stage-ui): extract primary color from stage canvas by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/83 * fix(vscode): enable Vue framework support in i18n-ally settings by @luoling8192 in https://github.com/moeru-ai/airi/pull/85 * refactor(twitter-services): function factory by @luoling8192 in https://github.com/moeru-ai/airi/pull/84 * feat: post tweet by @luoling8192 in https://github.com/moeru-ai/airi/pull/86 * fix(stage-ui): extract colors by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/87 * style(stage-web): disable color animation when dynamic theme enabled by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/88 * refactor(stage-web): ui refinements by @junkwarrior87 in https://github.com/moeru-ai/airi/pull/89 * refactor(stage-tamagotchi): rewrite it in rust by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/90 * feat(docs): add og-image by @kwaa in https://github.com/moeru-ai/airi/pull/91 * chore(docs): remove ico from head, remove houston by @kwaa in https://github.com/moeru-ai/airi/pull/92 * chore(twitter-services): remove preinstall by @kwaa in https://github.com/moeru-ai/airi/pull/93 * style(stage-web): fix word break by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/96 * fix, feat(telegram): fix typo, make chat_id unique by @leohearts in https://github.com/moeru-ai/airi/pull/99 * feat(stage-web): new settings animation by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/100 * fix: move setting-bar style to global css by @luoling8192 in https://github.com/moeru-ai/airi/pull/102 * fix(drizzle-duckdb-wasm): misc details in memory playground by @sumimakito in https://github.com/moeru-ai/airi/pull/101 * feat(components): add button, section by @luoling8192 in https://github.com/moeru-ai/airi/pull/104 * feat: airi card by @luoling8192 in https://github.com/moeru-ai/airi/pull/98 * refactor: airi card by @luoling8192 in https://github.com/moeru-ai/airi/pull/105 * fix(telegram-bot): OOM when handling loop by @nekomeowww in https://github.com/moeru-ai/airi/pull/106 * docs: README star-history by @luoling8192 in https://github.com/moeru-ai/airi/pull/108 * chore: several doc fixes and enhancements by @AsterisMono in https://github.com/moeru-ai/airi/pull/110 * refactor(airi-card): dialog by @luoling8192 in https://github.com/moeru-ai/airi/pull/111 * chore: remove macros import by @luoling8192 in https://github.com/moeru-ai/airi/pull/114 * refactor(stage-tamagotchi): remove stage electron by @LemonNekoGH in https://github.com/moeru-ai/airi/pull/115 * chore(*): migrate drizzle-duckdb-wasm and duckdb-wasm to proj-airi/duckdb-wasm by @sumimakito in https://github.com/moeru-ai/airi/pull/116 * fix(stage-tamagotchi): CSP blocked many requests by @nekomeowww in https://github.com/moeru-ai/airi/pull/117 ## New Contributors * @junkwarrior87 made their first contribution in https://github.com/moeru-ai/airi/pull/46 * @LittleSound made their first contribution in https://github.com/moeru-ai/airi/pull/48 * @qyl27 made their first contribution in https://github.com/moeru-ai/airi/pull/71 * @leohearts made their first contribution in https://github.com/moeru-ai/airi/pull/99 * @AsterisMono made their first contribution in https://github.com/moeru-ai/airi/pull/110 **Full Changelog**: https://github.com/moeru-ai/airi/compare/v0.3.6...v0.4.22