Add orle extension
Description
Screencast
Checklist
- [ ] I read the extension guidelines
- [ ] I read the documentation about publishing
- [ ] I ran
npm run buildand tested this distribution build in Raycast - [ ] I checked that files in the
assetsfolder are used by the extension itself - [ ] I checked that assets used by the
READMEare placed outside of themetadatafolder
Congratulations on your new Raycast extension! :rocket:
Due to our current reduced availability, the initial review may take up to 10-15 business days.
Once the PR is approved and merged, the extension will be available on our Store.
Greptile Summary
This PR adds the Orle extension, a comprehensive developer tools hub providing 100+ local-first utilities for encoding, formatting, hashing, and other common developer tasks. The extension uses a runtime loader pattern to dynamically import tool sections (encoding, crypto, colors, etc.) and merges them with generated metadata. The implementation includes proper error handling, Web Crypto API usage, and auto-copy functionality for quick workflows.
Key implementation highlights:
- Dynamic tool loading with lazy imports for performance
- Shared runtime between web and Raycast with Node-safe shims
- Generated metadata from sync script keeps tools in sync with web app
- Proper TypeScript typing and error boundaries throughout
Critical issue:
- Missing required
metadata/folder with screenshots for the view-type command (violates extension store requirements)
Confidence Score: 2/5
- Cannot be merged due to missing required metadata folder
- The code quality is excellent with proper error handling, type safety, and well-structured architecture. However, the extension violates a critical store requirement by missing the metadata folder with screenshots, which is mandatory for new extensions with view-type commands. This must be addressed before the extension can be published.
- The extension root needs a
metadata/folder with Raycast-styled screenshots before this can be merged
Important Files Changed
| Filename | Overview |
|---|---|
| extensions/orle/package.json | Added extension configuration with proper dependencies and metadata |
| extensions/orle/CHANGELOG.md | Changelog follows proper format with {PR_MERGE_DATE} placeholder |
| extensions/orle/src/search-tools.tsx | Main command interface with proper search and list functionality |
| extensions/orle/src/components/tool-form.tsx | Dynamic tool form component with proper state management and auto-copy functionality |
| extensions/orle/src/runtime/loader.ts | Runtime loader with dynamic imports and metadata merging |
| extensions/orle/src/runtime/sections/crypto.ts | Cryptographic tools with proper Web Crypto API usage and error handling |
| extensions/orle/src/runtime/sections/colors.ts | Color conversion and contrast tools using culori library |
| extensions/orle/src/runtime/sections/encoding.ts | URL, HTML, and Unicode encoding/decoding utilities with proper error handling |