Your next Mac users are looking here.

Your app could be someone’s new favorite.

Built a useful Mac app, or found one you love?
Help the next person discover it on Macify.

Initial review in 12–48 hours.

Submit with
your agent.

Your agent can prepare a Macify listing from your app’s website.

You approve it before it submits.

Paste into your agent. It will ask for your app’s website and whether you also have a deal to submit.

Read the full instructions
Help me submit a Mac app to Macify.

Prepare the contribution using the web and repository tools available to you.
Use web access to read the sources below. If authenticated GitHub tools are available, work in my fork. Otherwise return the complete application JSON and instructions for opening the pull request manually. Do not claim to have submitted anything unless you have a real pull request URL.

Ask me these questions first and wait for my answers before you read sources, write files, or prepare anything:
- The app's official website.
- Am I submitting the app listing only, or the listing plus a current deal (a Black Friday or other announced discount)?
- If I want a deal: the discount, the promo code (or none), the official offer URL, and the start date and any end date with their timezone, or no scheduled expiry (endsAt: null). Also any eligibility limits, such as new customers only, specific plans, or specific regions.

If I want the listing only, skip every deal instruction below and add no deal file. If I do want a deal, verify my answers against an official source and tell me about anything that does not match.

Read these first:
- Contribution guide: https://raw.githubusercontent.com/Beingpax/macify/main/CONTRIBUTING.md
- App template: https://raw.githubusercontent.com/Beingpax/macify/main/catalog/examples/application.example.json
- App schema: https://raw.githubusercontent.com/Beingpax/macify/main/catalog/schema/application.schema.json
- Catalogue overview: https://raw.githubusercontent.com/Beingpax/macify/main/catalog/README.md
- Optional deal template: https://raw.githubusercontent.com/Beingpax/macify/main/catalog/examples/deal.example.json
- Deal schema: https://raw.githubusercontent.com/Beingpax/macify/main/catalog/schema/deal.schema.json
- Existing apps (including category slugs in each manifest): https://github.com/Beingpax/macify/tree/main/catalog/apps
- Published categories: https://macify.app/categories
- Validation rules: https://raw.githubusercontent.com/Beingpax/macify/main/scripts/validate-catalogue.mjs
- Pull request checklist: https://raw.githubusercontent.com/Beingpax/macify/main/.github/pull_request_template.md

If repository sources return 403 or 404, ask me for access or the missing files before preparing a listing. Do not invent a template or bypass access controls.

1. Check that the app is not already listed and has been publicly available for at least 30 days. Verify its Mac support, maintenance, pricing, privacy, support, and downloads using current official sources. Ask me about anything you cannot verify; do not invent facts or infer a release date.
2. Copy the complete application template to catalog/apps/<app-slug>.json. The lowercase, hyphenated slug must match the filename. Preserve "$schema": "../schema/application.schema.json" and "schemaVersion": 1. Include every required field, use null only where allowed, and do not add unknown fields. Write a factual Markdown description covering the app's purpose, features, audience, tradeoffs, privacy, requirements, and pricing. Prefer relevant category slugs already used in catalog/apps; categories are slug arrays, not a separate catalogue file or a fixed enum. If no existing category fits, ask me before proposing a new slug.
3. Verify the official HTTPS website URL even if my input was a bare domain or HTTP URL. Check duplicates by slug, app name, and website. Use public, direct HTTPS image URLs for authentic artwork, with distinct URLs for the required icon and preview. media.screenshots is required but may be empty; otherwise supply up to eight screenshots with unique URLs. Each media item needs altText (3–300 characters). Images must be downloadable in a supported image format and no larger than 10 MB. Do not commit image files. Omit isFeatured and isEditorsPick, or set both to false.
4. Use pricingType free, freemium, or paid. Free apps require billingType null; paid and freemium apps require one_time or subscription. Use sourceType open_source or closed_source. Set youtubeUrl to null if there is no verified video. Omit relatedAppSlugs or use an empty array unless there are relevant existing app slugs; do not include duplicates or the app itself.
5. With a local checkout and a supported Node.js version (CI uses Node 22), run node scripts/validate-catalogue.mjs (equivalent to npm run catalogue:validate). This validator has no package dependencies and checks the entire catalogue and contributor examples. Fix issues introduced by the new files, and report unrelated failures without changing other files. Report the actual command result or logs; never claim validation ran if you only have web/GitHub tools. Passing the JSON schema alone is insufficient because the validator adds cross-field, filename, duplicate, relationship, and media checks.
6. Show me the completed listing, any accompanying deal, and official source links. After I approve, open a pull request against Beingpax/macify main containing only the newly added app JSON file, plus its matching deal JSON if I asked for a deal in your first question. For that deal, follow the deal template and keep the discount, code (or null), official URL, a timezone-qualified start date and end date (or endsAt: null for no scheduled expiry), and eligibility exactly as the official source states them. Use the same slug for both files and do not replace an existing deal; request a listing correction instead. Use the repository pull request checklist, explain why the app belongs, include official sources and the validation result, and return the real pull request URL. Do not change any other repository files. If GitHub tools are unavailable, give me the complete JSON and manual submission steps.

A merged pull request is synchronized into a pending editorial revision. It is not automatically published; the owner must review and publish the listing, then any accompanying deal.

Expect an initial review in 12–48 hours. The site owner makes the final editorial decision; submission does not guarantee publication.
Prefer to prepare the listing yourself?Read the submission guide (opens in a new tab)

Before you hit send.

A little clarity on what happens next.

What happens after I submit?

Expect an initial review in 12–48 hours. We may ask for corrections or stronger evidence. The site owner makes the final decision and may accept, edit, defer, or decline a submission. Publication is not guaranteed.

Do I need to be the developer?

No. You can submit an app you built or recommend one you use. Use official sources and accurate details either way.

Does submitting with an agent change the review?

No. An agent helps prepare the same application file you would submit yourself. The eligibility requirements and editorial review are the same. GitHub access is needed to open a pull request; without it, your agent can give you the file to submit manually.

Can I get a featured placement?

We’re still working out how featuring should work on Macify.

A good app deserves
to be discovered.

Bring something useful to the Macify directory.

Submit your app