From 7b6f36245b5797b85d11b3d4b053e7add36ed4e3 Mon Sep 17 00:00:00 2001 From: Paullo9 Date: Thu, 5 Nov 2026 14:15:30 +0100 Subject: [PATCH 1/4] docs: App Store listing draft for Paul's review docs/app-store/ holds one plain UTF-8 file per App Store Connect field: name, subtitle, promotional text, description, keywords, what's new, category (Education primary, Productivity secondary), URLs, age rating (4+), App Privacy (Data Not Collected; macTEM has no network entitlement) and review notes. README.md lists each field's character count against Apple's limit. Claims come from the README, CHANGELOG and mac4dstem.com/mactem/ only. The review notes carry a bracketed note: macTEM's demo documents open only with developer launch arguments, so App Review needs an in-app demo entry or a sample-file link before submission. Done: the listing text is drafted within every limit, part of #105. Next: Paul approves the text, macTEM gets an in-app demo entry, and privacy.html and support.html name macTEM before submission. Co-Authored-By: Claude Opus 5.5 --- docs/app-store/README.md | 19 +++++++++++++++++++ docs/app-store/age-rating.txt | 28 ++++++++++++++++++++++++++++ docs/app-store/app-privacy.txt | 12 ++++++++++++ docs/app-store/category.txt | 11 +++++++++++ docs/app-store/description.txt | 27 +++++++++++++++++++++++++++ docs/app-store/keywords.txt | 1 + docs/app-store/name.txt | 1 + docs/app-store/promotional-text.txt | 1 + docs/app-store/review-notes.txt | 17 +++++++++++++++++ docs/app-store/subtitle.txt | 1 + docs/app-store/urls.txt | 7 +++++++ docs/app-store/whats-new.txt | 1 + 12 files changed, 126 insertions(+) create mode 100644 docs/app-store/README.md create mode 100644 docs/app-store/age-rating.txt create mode 100644 docs/app-store/app-privacy.txt create mode 100644 docs/app-store/category.txt create mode 100644 docs/app-store/description.txt create mode 100644 docs/app-store/keywords.txt create mode 100644 docs/app-store/name.txt create mode 100644 docs/app-store/promotional-text.txt create mode 100644 docs/app-store/review-notes.txt create mode 100644 docs/app-store/subtitle.txt create mode 100644 docs/app-store/urls.txt create mode 100644 docs/app-store/whats-new.txt diff --git a/docs/app-store/README.md b/docs/app-store/README.md new file mode 100644 index 0000000..ca7c58b --- /dev/null +++ b/docs/app-store/README.md @@ -0,0 +1,19 @@ +# Mac App Store listing: macTEM + +Draft for Paul's approval; names, subtitles and screenshots are his. + +One plain UTF-8 file per App Store Connect field. Counts are characters (`wc -m`), no trailing newline in the limited fields. + +- `name.txt`: 6 / 30 +- `subtitle.txt`: 24 / 30 +- `promotional-text.txt`: 165 / 170 +- `description.txt`: 2423 / 4000 (plain text, no markdown) +- `keywords.txt`: 98 / 100 (comma-separated, no spaces after commas; no word from the name or subtitle, which Apple indexes already, and no other product names) +- `whats-new.txt`: 35 / 4000 (Apple does not show What's New for a first version; this is for the record and the first update) +- `category.txt`: primary Education, secondary Productivity (no limit) +- `urls.txt`: support, marketing and privacy policy URLs on mac4dstem.com (no limit) +- `age-rating.txt`: questionnaire answers, all None, rating 4+ (no limit) +- `app-privacy.txt`: Data Not Collected; macTEM has no network entitlement (no limit) +- `review-notes.txt`: 1245 / 4000; holds a bracketed note for Paul, because macTEM has no in-app demo entry yet + +Every claim comes from the README, CHANGELOG or mac4dstem.com/mactem/ as of 2026-11-05; nothing from the roadmap. diff --git a/docs/app-store/age-rating.txt b/docs/app-store/age-rating.txt new file mode 100644 index 0000000..bd56d60 --- /dev/null +++ b/docs/app-store/age-rating.txt @@ -0,0 +1,28 @@ +Age rating questionnaire (App Store Connect) + +Features +- Parental Controls: No +- Age Assurance: No +- Unrestricted Web Access: No (the app makes no network connection) +- User-Generated Content: No +- Messaging and Chat: No +- Advertising: No + +Mature themes, medical and wellness, sexuality and nudity, violence, chance-based activities +- Profanity or Crude Humor: None +- Horror/Fear Themes: None +- Alcohol, Tobacco, or Drug Use or References: None +- Medical or Treatment Information: None +- Health or Wellness Topics: No +- Sexual Content or Nudity: None +- Graphic Sexual Content and Nudity: None +- Cartoon or Fantasy Violence: None +- Realistic Violence: None +- Prolonged Graphic or Sadistic Realistic Violence: None +- Guns or Other Weapons: None +- Contests: None +- Gambling: No +- Simulated Gambling: None +- Loot Boxes: No + +Result: 4+ diff --git a/docs/app-store/app-privacy.txt b/docs/app-store/app-privacy.txt new file mode 100644 index 0000000..81d93a8 --- /dev/null +++ b/docs/app-store/app-privacy.txt @@ -0,0 +1,12 @@ +App Privacy (App Store Connect) + +Do you or your third-party partners collect data from this app? No. +Label shown on the store: Data Not Collected. + +Why this is correct: +- macTEM makes no network connection. Its sandbox entitlements are the App Sandbox, user-selected file read-write and app-scoped bookmarks; it has no network client entitlement. +- No analytics, telemetry, advertising, crash reporting, accounts or tracking identifiers. +- Files, sessions and exports are read from and written to the user's own storage only, reached through the system Open and Save panels. + +Privacy Policy URL: https://mac4dstem.com/privacy.html +Before submission: that page is written for mac4DSTEM and does not yet name macTEM (see urls.txt). diff --git a/docs/app-store/category.txt b/docs/app-store/category.txt new file mode 100644 index 0000000..2b1a95b --- /dev/null +++ b/docs/app-store/category.txt @@ -0,0 +1,11 @@ +Primary: Education +The Mac App Store has no Science category, and Education is where Apple and users place scientific and research tools, so a microscopist browsing for analysis software looks here. + +Secondary: Productivity +The app is a working tool for analysing and exporting data, which fits Productivity better than the remaining categories. + +Compared: +- Education: recommended as primary; the closest home for scientific analysis on the store. +- Productivity: good secondary; covers working tools, but on its own it is crowded with office, note and task apps. +- Developer Tools: no; Apple means tools for software developers, and App Review can question the fit. +- Utilities: no; Apple means system utilities (disk, clipboard, menu bar), not data analysis. diff --git a/docs/app-store/description.txt b/docs/app-store/description.txt new file mode 100644 index 0000000..bf666fd --- /dev/null +++ b/docs/app-store/description.txt @@ -0,0 +1,27 @@ +macTEM analyses TEM images, EDS and EELS spectrum images and electron diffraction patterns natively on Apple silicon. Open a file, look, measure, and export a figure, with every number traceable to the method it came from. + +OPEN YOUR FILES +DigitalMicrograph (.dm3, .dm4), Velox (.emd), TIFF and MRC, and single .msa spectra. The file's content decides where it opens: an image in the Image room, a spectrum image in the EDS or EELS room. A multi-page TIFF or ImageJ stack opens frame by frame, read on demand. + +ROOMS +• Image: calibration from the file, colormap, contrast and gamma; distances, angles, line profiles and particles; image stacks. Your marks are saved in a session file next to the image. +• FFT: the transform of the image or a region with a window, spots and their d-spacings, the radial profile, a masked inverse, and Gaussian, band-pass, ABSF and Wiener filters. +• EDS: Velox and GMS spectrum images. Pick elements from the periodic table or let Auto ID suggest them, then get net-count, wt%, at% and thickness maps, regions, and the Cliff-Lorimer composition, with zeta-factor and cross-section methods. +• EELS: Dual-EELS spectrum images. Align the zero-loss peak, map t/λ, pick edges from 383 K, L and M edges of 95 elements, and fit their intensities and at%, each with its uncertainty. +• Diffraction: calibrate on a ring of a standard (Au, Al or Si), then index rings and spots against a standard or a CIF and read their d-spacings. +• Results: every measurement of a file in one table, exported as CSV. + +Exports are PNG figures with the scale bar, CSV tables, MSA spectra, and a method JSON for the spectroscopy rooms. + +WHERE THE NUMBERS COME FROM +Every number is computed by the open macEM Swift packages, each checked against the Python package it ports, within that package's own tolerance: file readers, FFT and image maths, crystallography, and EDS and EELS. EELS cross sections are the generalised oscillator strengths of Segger, Guzzinati and Kohl, bundled with the app. + +YOUR DATA STAYS ON YOUR MAC +No account, no analytics, no telemetry, and no network access. Your files are read from and written to your own storage only. + +OPEN SOURCE +macTEM is free software under GPL-3.0. The source and the issue tracker are at github.com/mac4DSTEM/macTEM. + +Its companion app, mac4DSTEM, analyses 4D-STEM data: virtual images, strain, orientation, ptychography and EDS. + +Requires a Mac with Apple silicon. \ No newline at end of file diff --git a/docs/app-store/keywords.txt b/docs/app-store/keywords.txt new file mode 100644 index 0000000..18bd3d7 --- /dev/null +++ b/docs/app-store/keywords.txt @@ -0,0 +1 @@ +electron microscopy,STEM,HRTEM,FFT,diffraction,spectrum image,quantification,dm4,MRC,EMD,d-spacing \ No newline at end of file diff --git a/docs/app-store/name.txt b/docs/app-store/name.txt new file mode 100644 index 0000000..a788902 --- /dev/null +++ b/docs/app-store/name.txt @@ -0,0 +1 @@ +macTEM \ No newline at end of file diff --git a/docs/app-store/promotional-text.txt b/docs/app-store/promotional-text.txt new file mode 100644 index 0000000..392fa3c --- /dev/null +++ b/docs/app-store/promotional-text.txt @@ -0,0 +1 @@ +Calibrated TEM images, FFTs, EDS and EELS spectrum images and electron diffraction, analysed natively on Apple silicon. Open source, and your data stays on your Mac. \ No newline at end of file diff --git a/docs/app-store/review-notes.txt b/docs/app-store/review-notes.txt new file mode 100644 index 0000000..33b7c7c --- /dev/null +++ b/docs/app-store/review-notes.txt @@ -0,0 +1,17 @@ +Notes for App Review + +[Paul, before submission: macTEM has no demo menu item or button today. Its generated demo documents (a lattice image, an Au ring pattern, an image stack, an EDS and an EELS spectrum image) open only with developer launch arguments (--demo-fixture and similar, macTEM/App/LaunchOptions.swift), which App Review cannot pass. Either add an in-app entry such as "Help > Open Demo Image" before submission and name it in step 2 below, or put a link to sample files here. Delete this paragraph once done.] + +macTEM analyses transmission electron microscope images, EDS and EELS spectrum images and diffraction patterns. You do not need data of your own to try it. + +How to try it: +1. Launch the app. +2. [Open the built-in demo: menu item to be named, see the note above.] +3. Work down the sidebar: Image (measure a distance, change the contrast), FFT (the transform and its spots), Diffraction (calibrate on the ring pattern), Results (every measurement in one table, exported as CSV). + +No account, sign-in, purchase or network connection is needed anywhere in the app. macTEM makes no network requests. + +Open source: +macTEM is free software under GPL-3.0. Source: https://github.com/mac4DSTEM/macTEM + +Contact: mail@mac4dstem.com diff --git a/docs/app-store/subtitle.txt b/docs/app-store/subtitle.txt new file mode 100644 index 0000000..c2350dd --- /dev/null +++ b/docs/app-store/subtitle.txt @@ -0,0 +1 @@ +TEM images, EDS and EELS \ No newline at end of file diff --git a/docs/app-store/urls.txt b/docs/app-store/urls.txt new file mode 100644 index 0000000..9227cd2 --- /dev/null +++ b/docs/app-store/urls.txt @@ -0,0 +1,7 @@ +Support URL: https://mac4dstem.com/support.html +Marketing URL: https://mac4dstem.com/mactem/ +Privacy Policy URL: https://mac4dstem.com/privacy.html + +The domain is mac4dstem.com (website/CNAME); www redirects to the apex. + +Before submission: privacy.html and support.html are written for mac4DSTEM only and do not name macTEM. privacy.html also carries the [FULL NAME] and [STREET AND NUMBER] controller placeholders. Either add macTEM to both pages (macTEM makes no network request at all) or give macTEM its own pages, and update these URLs to match. diff --git a/docs/app-store/whats-new.txt b/docs/app-store/whats-new.txt new file mode 100644 index 0000000..a381fd6 --- /dev/null +++ b/docs/app-store/whats-new.txt @@ -0,0 +1 @@ +First release on the Mac App Store. \ No newline at end of file From 2ff5df20d0f7acabbb27d7aefb96ea7a6949a398 Mon Sep 17 00:00:00 2001 From: Paullo9 Date: Thu, 5 Nov 2026 15:31:50 +0100 Subject: [PATCH 2/4] docs: review notes name Help > Open Demo Data macTEM#108 added the in-app demo, so App Review has a way in without data of its own; the placeholder note for Paul is gone. Done: review notes point at the demo menu. Next: Paul reads the listing. Co-Authored-By: Claude Opus 5.5 --- docs/app-store/review-notes.txt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/app-store/review-notes.txt b/docs/app-store/review-notes.txt index 33b7c7c..00ae935 100644 --- a/docs/app-store/review-notes.txt +++ b/docs/app-store/review-notes.txt @@ -1,13 +1,11 @@ Notes for App Review -[Paul, before submission: macTEM has no demo menu item or button today. Its generated demo documents (a lattice image, an Au ring pattern, an image stack, an EDS and an EELS spectrum image) open only with developer launch arguments (--demo-fixture and similar, macTEM/App/LaunchOptions.swift), which App Review cannot pass. Either add an in-app entry such as "Help > Open Demo Image" before submission and name it in step 2 below, or put a link to sample files here. Delete this paragraph once done.] - macTEM analyses transmission electron microscope images, EDS and EELS spectrum images and diffraction patterns. You do not need data of your own to try it. How to try it: 1. Launch the app. -2. [Open the built-in demo: menu item to be named, see the note above.] -3. Work down the sidebar: Image (measure a distance, change the contrast), FFT (the transform and its spots), Diffraction (calibrate on the ring pattern), Results (every measurement in one table, exported as CSV). +2. Choose Help > Open Demo Data and pick one of the generated documents: Lattice Image, Au Diffraction Pattern, EDX Spectrum Image or EELS Spectrum Image. Each opens in its room. +3. Work down the sidebar: Image (measure a distance, change the contrast), FFT (the transform and its spots), Diffraction (calibrate on the ring pattern), EDX and EELS (spectra, maps and quantification on the demo spectrum images), Results (every measurement in one table, exported as CSV). No account, sign-in, purchase or network connection is needed anywhere in the app. macTEM makes no network requests. From 3f8057f513b638a6f4f0e66685d88f95cd57bf5f Mon Sep 17 00:00:00 2001 From: Paullo9 Date: Thu, 5 Nov 2026 16:57:37 +0100 Subject: [PATCH 3/4] docs: App Store submission fields; site notes corrected submission-fields.txt lists the remaining App Store Connect entries (bundle ID, SKU, copyright, price, seller, content rights, export compliance, build and release). urls.txt no longer claims stale site pages: support and the app pages are current; only the name and address placeholders remain (macEM-suite#80). Done: the listing folder covers every App Store Connect field. Next: screenshots on demo data. Co-Authored-By: Claude Opus 5.5 --- docs/app-store/submission-fields.txt | 15 +++++++++++++++ docs/app-store/urls.txt | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 docs/app-store/submission-fields.txt diff --git a/docs/app-store/submission-fields.txt b/docs/app-store/submission-fields.txt new file mode 100644 index 0000000..7897171 --- /dev/null +++ b/docs/app-store/submission-fields.txt @@ -0,0 +1,15 @@ +The other App Store Connect fields (one line each, as entered) + +Bundle ID: com.mac4dstem.macTEM +SKU: mactem-macos +Primary language: English (U.S.) +Platform: macOS +Copyright: 2026 Paul Lobpreis +Price: Free (Tier 0), all territories +Seller: individual; EU Digital Services Act: non-trader +Sign-in required for review: No +Content rights: the app contains no third-party content (code ported from GPL-3.0 projects is credited in NOTICE and Licenses/) +Export compliance: uses no non-exempt encryption (Info.plist ITSAppUsesNonExemptEncryption = NO; macTEM makes no network connection) +Version: the release tag's version (Config/Version.xcconfig); build: CURRENT_PROJECT_VERSION, or STORE_BUILD_NUMBER for a re-upload +Build: uploaded with tools/release-store.sh --upload from the release tag +Release: manual release after approval diff --git a/docs/app-store/urls.txt b/docs/app-store/urls.txt index 9227cd2..8401683 100644 --- a/docs/app-store/urls.txt +++ b/docs/app-store/urls.txt @@ -4,4 +4,4 @@ Privacy Policy URL: https://mac4dstem.com/privacy.html The domain is mac4dstem.com (website/CNAME); www redirects to the apex. -Before submission: privacy.html and support.html are written for mac4DSTEM only and do not name macTEM. privacy.html also carries the [FULL NAME] and [STREET AND NUMBER] controller placeholders. Either add macTEM to both pages (macTEM makes no network request at all) or give macTEM its own pages, and update these URLs to match. +Before submission: privacy.html and impressum.html still carry the name and address placeholders (macEM-suite#80); Paul supplies them. Both pages already cover macTEM. From 845d9794b7b1127da31a1a43f77f343b114b1a23 Mon Sep 17 00:00:00 2001 From: Paullo9 Date: Thu, 5 Nov 2026 18:07:23 +0100 Subject: [PATCH 4/4] docs: no private repo reference in the listing notes --- docs/app-store/urls.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/app-store/urls.txt b/docs/app-store/urls.txt index 8401683..d0d15ce 100644 --- a/docs/app-store/urls.txt +++ b/docs/app-store/urls.txt @@ -4,4 +4,4 @@ Privacy Policy URL: https://mac4dstem.com/privacy.html The domain is mac4dstem.com (website/CNAME); www redirects to the apex. -Before submission: privacy.html and impressum.html still carry the name and address placeholders (macEM-suite#80); Paul supplies them. Both pages already cover macTEM. +Before submission: privacy.html and impressum.html still carry the name and address placeholders; Paul supplies them. Both pages already cover macTEM.