Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .zennotes-commit
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3301a29d6564c13df4d85a5acb59789c5fc7e200
da59c3729057fab3e7556bbe4360305b92313aad
4 changes: 2 additions & 2 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ android {
applicationId "md.zennotes"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 18
versionName "1.1.16"
versionCode 19
versionName "1.1.17"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
Expand Down
42 changes: 42 additions & 0 deletions docs/releases/v1.1.17/PLAY_STORE_DESCRIPTION.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
ZenNotes is a local-first markdown notes app for writing, organizing, and connecting ideas without giving up ownership of your files.

YOUR NOTES, YOUR FILES

Every note is a plain .md file in a vault you control. Start with private on-device storage or choose any folder through Android's system folder picker. On-device and folder vaults work without an account.

ZENNOTES CLOUD

Connect an optional ZenNotes Cloud plan to:
• Sync a vault across ZenNotes desktop, Android, and iPhone
• Sync notes and attachments
• Create manual and automatic daily backups
• Restore a full vault or a single note from a backup
• Publish notes to the web and manage their public links

Cloud never replaces the free local-first workflow. Use it only when you want hosted sync, backup, or publishing.

WRITE IN MARKDOWN

Use a focused editor with headings, lists, tasks, tables, code, links, wikilinks, tags, callouts, footnotes, and frontmatter. A mobile formatting bar keeps common actions close to the keyboard.

RICH, OFFLINE PREVIEW

Render KaTeX math, Mermaid diagrams, JSXGraph, function plots, tables, callouts, and more directly on your device.

ORGANIZE YOUR WAY

Browse folders and tags, search the full vault, manage tasks, create periodic notes, and work with table databases stored as CSV.

CAPTURE QUICKLY

Create a quick note from the app or send text and links to ZenNotes from Android's share sheet.

ANDROID STORAGE, DONE RIGHT

The default vault needs no storage permission. The folder option uses Android's Storage Access Framework and a scoped grant to the folder you choose. ZenNotes does not request all-files access.

PRIVACY BY DEFAULT

ZenNotes has no advertising or tracking. Local notes stay in the storage you choose. When you enable ZenNotes Cloud, the account identity, connected-device information, and vault content needed for the Cloud features you use are sent to the ZenNotes service. Payment details are handled by Stripe.

ZenNotes is open source. Your vault remains useful outside the app because it is made of ordinary files.
41 changes: 41 additions & 0 deletions docs/releases/v1.1.17/PLAY_STORE_METADATA.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Play Console metadata: ZenNotes 1.1.17

| Field | Value | Limit |
| --- | --- | --- |
| App name | ZenNotes: Markdown Notes | 30 |
| Short description | see `SHORT_DESCRIPTION.txt` (unchanged) | 80 |
| Full description | see `PLAY_STORE_DESCRIPTION.txt` (unchanged) | 4000 |
| Release notes | see `WHATS_NEW.md` (under 500 chars) | 500 |
| Category | Productivity | n/a |
| Application ID | md.zennotes | n/a |
| Version | 1.1.17 (versionCode 19) | n/a |
| Contact email | adib@lumarylabs.com | n/a |
| Website | https://zennotes.org | n/a |
| Privacy policy URL | https://zennotes.org/privacy | n/a |
| Ads | Contains no ads | n/a |
| Price | Free app; optional external SaaS subscription | n/a |

## Data safety

Unchanged. No new permissions, no new collection. Comment authorship is a
name stored in the note's own comment file inside the vault; saved filters
are a device preference.

## Release checks

- Native version: 1.1.17; versionCode: 19 (bump committed with the 2.46.0
pin). Capacitor 8.5 / SDK 36 / minSdk 24 / AGP 8.13 / Gradle 8.14.5.
Native changes: none on this branch.
- Source: branch `release/1.1.17`. Commits: the pin move and bump, and this
pack. No shell changes.
- Build is pinned to upstream `da59c372` (the 2.46.0 tag commit), up from
`3301a29` (2.45.0) in 1.1.16. Between the pins app-core gains comment
threads with authors and replies, the @ menu calendar, saved Tasks
filters, the folder-based Kanban board, and two math fixes; the bridge
contract gains optional comment fields (`author`, `parentId`) and the
`kanbanFolderRoot` view setting.
- Verified 2026-09-08 at the pin: `npm run typecheck` clean against
app-core 2.46.0; `npm test`; `npm run build` production bundle. Not
exercised on an emulator for this pin release.
- Matching ports: iOS ZenNotes/zennotesios `release/1.9.8` (build 19);
desktop ZenNotes/zennotes 2.46.0.
38 changes: 38 additions & 0 deletions docs/releases/v1.1.17/PLAY_STORE_REVIEW_NOTES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Play review and Data safety notes: ZenNotes 1.1.16

Version 1.1.16 updates the shared ZenNotes app core from 2.44.0 to 2.45.0
and ports the iPhone shell's 1.9.7 editing and gesture fixes to Android. No
new permissions, no new data collection, no manifest permission changes,
no native code changes, and no change to the Data safety answers.

## What changed

- Editor input: the note editor no longer disables the keyboard's
autocorrect, suggestions, and sentence capitalization for the note body
(an HTML attribute change on the editor's content element). The system
keyboard behaves as it does in any text field; the app itself performs
no text processing and sends nothing.
- Editor toolbar: the Bullet, Checkbox, and Heading buttons insert their
marker on an empty line; the caret is kept above the toolbar that docks
over the keyboard.
- Note lists: every note row (Home, Quick Notes, Tags, Archive, Trash)
answers long-press (an options sheet), swipe left (Archive / Delete, or
Restore / Delete on archived and trashed notes), and swipe right (pin).
These are the actions the app already offered elsewhere; Delete moves a
note to the app's trash folder, and deleting from Trash asks for
confirmation first.
- Navigation: a new Settings → Appearance → Start screen preference lets the
user open the app on Home instead of the last note (stored on the device
only, mirrored to app preferences like the existing layout and gesture
settings). Home no longer reverts to the Tasks view after a vault
rescan.
- App-core 2.45 fixes: arrow-key navigation in the editor's completion
menus, and a self-hosted vault behind a proxy without WebSockets keeps
refreshing over plain HTTP. Editor and sync behavior only.

## Data safety

Unchanged. The app collects no data by default; the optional ZenNotes Cloud
account and any user-configured self-hosted server work exactly as
previously declared. Local and folder vaults continue to work without an
account, and no storage permission is requested.
1 change: 1 addition & 0 deletions docs/releases/v1.1.17/PROMOTIONAL_TEXT.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
App core 2.46: comment threads with names, a calendar in the @ menu, saved Tasks filters, and a Kanban board with one column per folder.
31 changes: 31 additions & 0 deletions docs/releases/v1.1.17/RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# ZenNotes for Android 1.1.17: app core 2.46

A pin release, in step with iPhone 1.9.8. The shell is unchanged; the app
core moves from 2.45.0 to 2.46.0, and five of its ten changes reach the
phone.

## What changes on the phone

- **Comment threads with names.** A reply files under the comment it
answers and every entry shows who wrote it. An assistant connected over
MCP on your desktop can answer in the same threads; its replies arrive on
the phone through your synced vault, signed with its name.
- **Pick any date from the @ menu.** The list ends with Date…, which opens
a calendar; Today, Yesterday, Tomorrow and Now stay one tap away.
- **Saved Tasks filters.** Name a filter once and recall it from the chips
under the Tasks header.
- **The Kanban Folder board** gives every note folder its own column, or
the children of one folder you name (kanban_folder_root).
- **Math.** A $$ block inside a callout renders in both views, and Typst
formulas match KaTeX's size with square-root bars in the text color.

Not on the phone: the desktop-only keymap changes (Unbind, ignored keys),
the CLI fix and the remote-template routes, which need a desktop or a
ZenNotes server.

## Under the hood

Shell-only release: the web bundle changes, the native side does not.
Pinned to upstream `da59c372`, the 2.46.0 tag commit.

No new permissions, services, or data collection.
1 change: 1 addition & 0 deletions docs/releases/v1.1.17/SHORT_DESCRIPTION.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Local-first markdown notes with optional sync, backups, and publishing.
7 changes: 7 additions & 0 deletions docs/releases/v1.1.17/SOCIAL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Social copy: ZenNotes Android 1.1.17

## Short

ZenNotes for Android 1.1.17 brings app core 2.46 to the phone: comment
threads with names, a calendar in the @ menu, saved Tasks filters, and a
Kanban board with one column per folder.
9 changes: 9 additions & 0 deletions docs/releases/v1.1.17/WHATS_NEW.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
App core 2.46 on Android.

• Comment threads with names; a reply files under the comment it answers
• Date… in the @ menu opens a calendar
• Saved Tasks filters as chips under the Tasks header
• Kanban Folder board: one column per note folder, or one folder's children
• Display math inside callouts; Typst formulas at KaTeX's size

No new permissions.
5 changes: 5 additions & 0 deletions docs/releases/v1.1.17/twitter-post.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
ZenNotes for Android 1.1.17 is out.

App core 2.46 on the phone: comment threads with names, a calendar in the @ menu, saved Tasks filters as chips, and a Kanban board with one column per folder. Math inside callouts renders, and Typst formulas match KaTeX's size.

App core 2.45 → 2.46.
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "zennotes-android",
"private": true,
"version": "1.1.16",
"version": "1.1.17",
"type": "module",
"description": "ZenNotes for Android — Capacitor shell over the ZenNotes app core",
"homepage": "https://zennotes.org",
Expand Down
2 changes: 1 addition & 1 deletion src/bridge/mobile-bridge.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ import {
import { folderForRelativePath, posixNormalize, sanitizeNoteTitle } from './vault-core'
import { isPhoneViewport } from '../viewport'

let appVersion = '1.1.16'
let appVersion = '1.1.17'

export async function loadNativeAppVersion(): Promise<string> {
try {
Expand Down
Loading