Reference
Feature inventory
Every user-facing feature of Mossnote in both templates, with its status, how we checked it and any known limit.
This is the complete list of what Mossnote does, built by reading the source code and then using the running app. Use it to find a feature, to see how it differs between templates, and to see what is solid and what has gaps.
How to read it#
- Default and Stardew columns: ● the feature is there, ○ it is not, and a word where it differs.
- Implemented works as described. Partly implemented works, with gaps. Known limitation works, with a limit you should know. Not verified exists in the code, but we could not run it here.
- Checked says how: Ran means we used it in the running app (web version, in Chromium, unless it says computer version); Code means we read the implementation and the project's own tests describe it, but we did not use it ourselves.
- Possible improvements are marked Possible improvement. They are not built, and nothing here promises they will be.
Notes and writing#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| Note box on Today and Day pages, save with ⌘/Ctrl+Enter | ● | ● | Implemented | Ran | Shortcut works only with the cursor in the box. |
| Drafts survive refresh; failed save keeps text with Retry | ● | ● | Implemented | Ran (draft); Code (retry) | Separate drafts for Today, each Day and the New note window. |
New note window (n, New note button) | ● | ● | Implemented | Ran | Focuses the box on Today instead. |
| Titles, per-note dates, discovery and question flags | ● | ● | Implemented | Ran | |
#, @, [[, / pickers; Tag and Link buttons | ● | ● | Implemented | Ran | Only typed characters open lists. [[ finds farm entries only in Stardew. |
Last line of #tags becomes tags on a new note | ● | ● | Implemented | Code | Not applied when editing. |
| Markdown subset in notes (bold, italic, code, lists, quotes, links) | ● | ● | Implemented | Code | No headings, tables, images or HTML. |
Edit in place (menu or e), note menu, delete with Undo | ● | ● | Implemented | Ran | |
| Note's own page with Linked from and On maps | ● | ● | Implemented | Ran | Reached by links; there is no list of note pages. |
| Quick actions (Met someone, Found something, Wondering, To do) | ○ | ● | Implemented | Ran | Fixed set; cannot be edited. Can be hidden in Settings. |
| Rich text, images or attachments in notes | ○ | ○ | Left out on purpose by the project. |
Dates and the calendar#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| Current in-game date, previous/next day, Stop dating new notes | Day counter | Seasons | Implemented | Ran | Next-day shows an Undo message. |
| Date picker | Number field | Year, season, day grid | Implemented | Ran | Opens as a bottom sheet on a phone. |
| Day pages, jump to a day | ● | ● | Implemented | Ran | [ and ] step days. |
| Notes without a date; Not dated filter; real-day fallback on Today | ● | ● | Implemented | Ran | |
| Editable calendar (names, days per season, add/remove seasons) | ○ (no seasons) | ● | Implemented | Ran (refusal); Code | Refused when it would strand existing dates. Only the last season can be removed. |
Looking back#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| Today with recent discoveries and open-question link | ● | ● plus Growing | Implemented | Ran | |
| Journal grouped by day with All/Discoveries/Questions (Open/Solved/All), tag filter, pinned-tag chips, Not dated, sort | ● | ● (Daily journal) | Implemented | Ran | Filters live in the address. Infinite scroll in blocks of 50 untested above 50 notes. |
| Questions: mark solved with optional answer, reopen, remove flag | ● | ● | Implemented | Ran | No ignored state, although the changelog mentions one. |
| Wide-screen margin for date, tags and links | ● | ● | Implemented | Ran |
People, farm, tags#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| People list: add, filter, tag filter, sort; person page | People | NPCs | Implemented | Ran | |
| Progress dots (1 to 99), notes, tags, fields, backlinks, On maps | ● | ● | Implemented | Ran | Fields autosave. |
| Farm: add, Growing/Done/Noted, Harvested today, Plant again, counts, entry page, Growing on Today | ○ | ● | Implemented | Ran | No timers or game data. |
| Tags: create, pin (up to 8 shown), rename, merge, delete, usage counts | ● | ● | Implemented | Ran | Tag rename onto an existing tag offers a merge. |
| Suggested tags (tasks, custom notes) | ○ | ● | Implemented | Code | Created and pinned on click. |
Search#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| Search window with commands, scope tabs and results | ● | ● | Implemented | Ran | ⌘K does not fire inside a text box. |
| Results page with removable chips and Search tips | ● | ● | Implemented | Ran | |
Typo tolerance, phrases, -exclude, #tag, @person, is:, in: | ● | ● | Implemented | Ran | |
| Date search | day 12 | spring 3 y2 | Implemented | Ran (day 5) | Season forms read from code. |
| Search maps and markers by text | ● | ● | Implemented | Ran |
Maps#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| Maps list, new map (optional layers), duplicate, delete, open a map file, Places list | ● | ● | Implemented | Ran | |
| Tools: select, pan, draw, line, arrow, box, circle, area, connect, text, note, marker, measure | ● | ● | Implemented | Ran | Selecting several with Shift: unverified. |
| Tidy-up drawing with Keep my drawing | ● | ● | Implemented | Ran | Rectangle recognised in testing; other shapes read from code. |
| Snapping (objects, alignment, grid, 15° angles), grid, rulers, guides, minimap, compass | ● | ● | Implemented | Ran (snap, grid, rulers); Code (guides) | Alt pauses snapping. |
| Selection: move, resize, rotate, group, lock, hide, rename, order, align, distribute, same size, copy/paste across maps, copy/paste style | ● | ● | Implemented | Ran (select all, align panel); Code | The clipboard is inside the app, not the system clipboard. |
| Styles: colour, fill, width, dash, corners, text kinds, connectors, saved style presets | ● | ● | Implemented | Ran (panel); Code | |
| Measure tool with your own units | ● | ● | Known limitation | Ran | Reading disappears on release; snapped to 15° while snapping is on. |
| Markers: icon, colour, status, tags, note, fields, layer, link to note/person/farm entry, types | ● | ● | Implemented | Ran | Farm entries only in Stardew. |
| Exploring mode | ● | ● | Implemented | Ran | |
| Layers (30 max), show/hide, lock, reorder, move selection | ● | ● | Implemented | Ran (list); Code | Deleting a layer moves its objects to a neighbour. |
| Autosave, undo/redo, version history (automatic and named) | ● | ● | Implemented | Ran (save version); Code (restore) | |
| Export PNG, SVG, PDF, editable project file; re-import project file | ● | ● | Implemented | Ran | PDF holds a picture; exports are trimmed to the drawing. |
| Touch gestures (pinch, long-press names) | ● | ● | Not verified | Code | No touch device available. |
| Background images or map import from pictures | ○ | ○ | Left out on purpose. |
Journals, templates, settings#
| Feature | Default | Stardew | Status | Checked | Notes |
|---|---|---|---|---|---|
| First-run template picker; many journals; switch, rename, new | ● | ● | Implemented | Ran | |
| Delete a journal with name confirmation and optional last copy | ● | ● | Implemented | Ran (dialog) | No undo besides the last copy. |
| Changing a journal's template afterwards | ○ | ○ | Known limitation | Code | Importing a file also replaces the journal's template and calendar, so it cannot be used to change one. Possible improvement |
| Rename, hide, reorder sections; reset to defaults | ● | ● | Implemented | Ran | Today and Journal cannot be hidden. |
| Theme (system/light/dark), reading size, template tint | moss | plum | Implemented | Ran | |
| Single-key shortcuts switch; shortcuts list; command palette commands | ● | ● | Implemented | Ran | |
| Responsive layouts: sidebar, rail, bottom bar and More sheet | ● | ● | Implemented | Ran (screenshots) |
Data safety and versions#
| Feature | Where | Status | Checked | Notes |
|---|---|---|---|---|
| Export JSON and Markdown; import with preview and refusal of bad files | Both versions | Implemented | Ran | Import replaces the open journal only. |
| Snapshots: automatic, manual, before import/restore/update; restore; delete | Both versions | Implemented | Ran (web version) | Automatic timing differs by version. |
| Recently deleted (30 days): restore, delete forever, empty | Both versions | Implemented | Ran (restore) | |
| Integrity check at start, newer-journal protection, upgrade snapshot | Computer version | Not verified | Code | Described in the README; not provoked here. |
| Data folder with Copy and Open folder | Computer version | Implemented | Ran (shown); Open folder not clicked | |
Phone access: switch, pairing code and QR, paired devices, --lan | Computer version | Partly implemented | Ran (computer side) | No real phone paired. |
| Backup reminder, storage protection, one-tab guard, update bar, offline use | Web version | Implemented | Ran (storage panel, second tab); Code (rest) | Reminder and update bar not triggered. |
| Installable app (manifest, icons, service worker) | Web version | Not verified | Code | Install was not tried. |
| Other browsers (Safari, Firefox, Edge) and phones | Web version | Not verified | Only Chromium was used. |
Not built, on purpose or not yet#
The project's README lists things it will not do: image attachments, imported map images, tag colours, checklists, completion tracking, cloud sync, accounts, rich text, statistics, AI features and plugins. They are decisions, not a backlog. Beyond that list, we noticed these gaps:
- Possible improvement A way to change a journal's template after it is made.
- Possible improvement The ignored question state that the changelog mentions.
- Possible improvement A link from inside the app to these documentation pages.
- Possible improvement A way to create your own template without editing the source.