Package Registry
Flow-Like provides a central package registry for discovering, sharing, and installing WASM nodes created by the community.
Registry Overview
Section titled βRegistry OverviewβThe package registry allows you to:
- Browse community-created packages
- Search by name, description, or keywords
- Install packages with a single click
- Publish your own packages for others to use
- Update installed packages when new versions are available
Finding Packages
Section titled βFinding PackagesβIn the Desktop App
Section titled βIn the Desktop AppβNavigate to Store β Packages to browse the registry:
- Search: Type in the search bar to find packages by name or keyword
- Filter: Toggle βVerified onlyβ to show only reviewed packages
- Sort: Order by downloads, relevance, name, or date
Package Details
Section titled βPackage DetailsβClick on any package to see:
- Overview: Description, author, license, and links
- Nodes: List of all nodes included in the package
- Permissions: What capabilities the package requires
- Versions: Version history with release notes
Installing Packages
Section titled βInstalling PackagesβFrom the Store
Section titled βFrom the Storeβ- Navigate to Store β Packages
- Find and click on the package you want
- Click the Install button
- The package will be downloaded and made available immediately
Local Installation
Section titled βLocal InstallationβYou can also install packages from local .wasm files:
- Navigate to Library β Packages
- Click Install from file
- Select your
.wasmfile
Managing Installed Packages
Section titled βManaging Installed PackagesβAccess your installed packages at Library β Packages:
| Action | Description |
|---|---|
| Update | Install the latest version of a package |
| Update All | Update all packages with available updates |
| Uninstall | Remove a package from your system |
Publishing Packages
Section titled βPublishing PackagesβPrerequisites
Section titled βPrerequisitesβBefore publishing, ensure your package:
- Has a valid
manifest.json(see Manifest Reference) - Compiles to a valid WASM module
- Follows the naming convention:
your-org.package-name - Includes a description and keywords
Publishing Process
Section titled βPublishing Processβ- Navigate to Library β Packages β Publish
- Step 1 - Upload: Select your compiled
.wasmfile - Step 2 - Manifest: Review and edit package metadata
- Step 3 - Permissions: Configure required capabilities
- Step 4 - Review: Verify all information and submit
After submission, your package enters the review queue.
Understanding Package Status
Section titled βUnderstanding Package Statusβ| Status | Badge | Description |
|---|---|---|
| Pending Review | π‘ | Awaiting admin review |
| Active | π’ | Approved and available |
| Deprecated | β οΈ | Still available but not recommended |
| Disabled | π΄ | Removed from the registry |
Verified Packages
Section titled βVerified PackagesβPackages marked with a β Verified badge have been:
- Reviewed by the Flow-Like team
- Checked for security issues
- Tested for compatibility
- Confirmed to follow best practices
Governance & Approval Process
Section titled βGovernance & Approval ProcessβAll packages submitted to the public registry must go through an approval process to ensure quality and security.
Why Review is Required
Section titled βWhy Review is RequiredβWASM packages can execute arbitrary code with the permissions they request. The review process:
- Protects users from malicious or buggy code
- Ensures quality of the ecosystem
- Maintains compatibility with Flow-Like updates
- Builds trust in the package registry
Submission Guidelines
Section titled βSubmission GuidelinesβBefore submitting a package for review:
- Test thoroughly - Ensure your package works correctly
- Minimize permissions - Only request what you actually need
- Document clearly - Include helpful descriptions and examples
- Follow naming conventions - Use
org.package-nameformat - Version semantically - Follow semver for versioning
The Review Process
Section titled βThe Review Processβββββββββββββββββ ββββββββββββββββ βββββββββββββββββ Package β β Admin β β Package ββ Submitted ββββββΆβ Review ββββββΆβ Decision βββββββββββββββββ ββββββββββββββββ ββββββββββββββββ β β β β βΌ βΌ β ββββββββββββββββ ββββββββββββββββ β β Security β β β Approved β β β Check β β β Declined β β ββββββββββββββββ β π¬ Feedback β β ββββββββββββββββ βΌβββββββββββββββββββββββββββββββββββββββββββββββββββββββββ Pending Review ββ β’ Package visible with "pending" status ββ β’ Cannot be installed by users yet βββββββββββββββββββββββββββββββββββββββββββββββββββββββββWhat Reviewers Check
Section titled βWhat Reviewers Checkβ| Area | What We Review |
|---|---|
| Security | Requested permissions match actual usage; no malicious patterns |
| Quality | Code compiles correctly; nodes function as described |
| Metadata | Name, description, keywords are accurate and helpful |
| Compatibility | Works with current Flow-Like version |
| License | License is valid and permits redistribution |
Review Outcomes
Section titled βReview OutcomesβAfter review, your package will receive one of these outcomes:
β Approved
Section titled ββ ApprovedβYour package is published to the registry:
- Status changes to Active
- Users can install it immediately
- You can publish updates (which also require review)
β Declined
Section titled ββ DeclinedβThe package did not meet requirements:
- Youβll receive feedback explaining why
- Common reasons:
- Security concerns with permissions
- Package doesnβt work as described
- Missing or incorrect metadata
- You can fix issues and resubmit
π¬ Changes Requested
Section titled βπ¬ Changes RequestedβMinor changes needed before approval:
- Reviewer comments explain what to fix
- Update your package and submit a new version
- The new version enters the review queue
Review Timeline
Section titled βReview Timelineβ- Most packages are reviewed within 48-72 hours
- Complex packages may take longer
- You can check status in Admin β Packages (if you have admin access)
Appealing Decisions
Section titled βAppealing DecisionsβIf you disagree with a review decision:
- Read the feedback carefully
- If you believe thereβs an error, open a GitHub issue
- Provide context and evidence supporting your case
- A different reviewer will evaluate the appeal
Administrator Access
Section titled βAdministrator AccessβUsers with the ManagePackages permission can:
- View all pending packages
- Review package contents and metadata
- Approve or decline submissions
- Add comments and feedback
- Disable problematic packages
Admin access is granted to trusted community members. If youβre interested in helping review packages, contact the Flow-Like team.
Best Practices
Section titled βBest PracticesβFor Package Authors
Section titled βFor Package Authorsβ- Start small - Begin with a single, well-tested node
- Request minimal permissions - Only what you truly need
- Include examples - Help users understand how to use your nodes
- Maintain compatibility - Test against Flow-Like updates
- Respond to feedback - Address reviewer comments promptly
For Users
Section titled βFor Usersβ- Check verification status - Prefer verified packages
- Review permissions - Understand what access a package needs
- Keep packages updated - Install security and bug fixes
- Report issues - Help maintainers improve packages
Local Development
Section titled βLocal DevelopmentβFor development, you can load packages locally without going through the registry:
- Build your WASM module locally
- Use Library β Packages β Install from file
- Test in your workflows
- Once ready, publish to the registry
This allows rapid iteration during development while maintaining quality for public releases.
Package Permissions Reference
Section titled βPackage Permissions ReferenceβWhen reviewing or installing packages, understand these permission levels:
| Permission | Risk Level | Description |
|---|---|---|
| None | Safe | Pure computation, no external access |
| Network | Medium | Can make HTTP requests |
| File System | High | Can read/write files |
| Environment | Medium | Can access environment variables |
| Process | Critical | Can spawn processes (rarely granted) |
Packages should request the minimum permissions needed for their functionality.