Skip to content

feat(ui): Add ZIP import for custom emojis - #688

Draft
nove-b wants to merge 1 commit into
fedify-dev:mainfrom
nove-b:feature/emoji-zip-import
Draft

nove-b wants to merge 1 commit into
fedify-dev:mainfrom
nove-b:feature/emoji-zip-import

Conversation

@nove-b

@nove-b nove-b commented Oct 29, 2026 •

Copy link
Copy Markdown

Closes #686.

This adds custom emoji import from Misskey packed emoji ZIP archives in the
administration dashboard.

Uploaded archives are stored privately, an import job is created, and a Fedify
background task processes the archive. The import status page shows the job
state and imported, skipped, and failed counts.

The importer:

  • reads emoji names, categories, and image filenames from meta.json
  • validates actual image data and accepts PNG, JPEG, GIF, and WebP files
  • limits archive size, entry count, and extracted size
  • rejects unsafe archive paths
  • skips existing shortcodes without overwriting images
  • cleans up temporary archives and images left by failed registrations

Verification

  • mise run check
  • mise exec -- pnpm test --run src/custom-emoji-import-tasks.test.ts
  • Manually uploaded a Misskey packed emoji ZIP using filesystem storage and
    confirmed emoji registration, status display, and temporary archive cleanup
  • Confirmed the same behavior using private S3-compatible object storage

AI assistance

I used Codex (GPT-5.6 Terra) for explanations, code examples, implementation
guidance, and review. I made the repository changes and verified the behavior
locally.

@coderabbitai

coderabbitai Bot commented Oct 29, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Codex provided code examples and implementation advice.

Assisted-by: Codex:GPT-5.6 Terra
@nove-b
nove-b force-pushed the feature/emoji-zip-import branch from f2efb48 to d6ab7be Compare October 29, 2026 07:20

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upload custom emojis from a ZIP file

1 participant