Skip to content

Ethran/notable

Repository files navigation

License Total Downloads Discord

Notable App

Notable (Fork)

A maintained and customized fork of the archived olup/notable project.

🐛 Report Bug Download Latest 💡 Request Feature

Sponsor on GitHub Support me on Ko-fi

Table of Contents

About This Fork

This project began as a fork of the original Notable app and has since evolved into a continuation of it. The architecture is largely the same, but many of the functions have been rewritten and expanded with a focus on practical, everyday use. Development is active when possible, guided by the principle that the app must be fast and dependable — performance comes first, and the basics need to feel right before new features are introduced. Waiting for things to load is seen as unacceptable, so responsiveness is a core priority.

Future plans include exploring how AI can enhance the app, with a focus on solutions that run directly on the device. A long-term goal is local handwriting conversion to LaTeX or plain text, making advanced features available without relying on external services.


Features

  • Fast page turns with caching: smooth, swift page transitions, including quick navigation to the next and previous pages.
  • ↕️ Infinite vertical scroll: a virtually endless canvas for notes with smooth vertical scrolling.
  • 📝 Quick Pages: instantly create a new page.
  • 📒 Notebooks: group related notes and switch easily between notebooks.
  • 📁 Folders: organize notes with folders.
  • 🤏 Editor mode gestures: intuitive gesture controls to enhance editing.
  • 🌅 Images: add, move, scale, and remove images.
  • Selection export: export or share selected handwriting as PNG.
  • ✏️ Scribble to erase: erase content by scribbling over it (disabled by default) — contributed by @niknal357.
  • 🔄 Auto-refresh on background change: useful when using a tablet as a second display — see Working with LaTeX.

Download

Download the latest stable version of the Notable app here.

Alternatively, get the latest build from the main branch via the "next" release.

Open the Assets section of the release and select the .apk file.

❓ Where can I see alternative/older releases?
You can go to the original olup Releases and download alternative versions of the Notable app.
❓ What is a 'next' release?
The "next" release is a pre-release and may contain features implemented but not yet released as part of a stable version — and sometimes experiments that may not make it into a release.

Gestures

Notable features intuitive gesture controls within Editor mode to optimize the editing experience:

☝️ 1 Finger

  • Swipe up or down: scroll the page.
  • Swipe left or right: change to the previous/next page (only available in notebooks).
  • Double tap: undo.
  • Hold and drag: select text and images.

✌️ 2 Fingers

  • Swipe left or right: show or hide the toolbar.
  • Single tap: switch between writing and eraser modes.
  • Pinch: zoom in and out.
  • Hold and drag: move the canvas.

🔲 Selection

  • Drag: move the selection.
  • Double tap: copy the selected writing.

System Requirements and Permissions

The app targets Onyx BOOX devices and requires Android 10 (SDK 29) or higher. Limited support for Android 9 (SDK 28) may be possible if issue #93 is resolved. Handwriting functionality is currently not available on non-Onyx devices. Enabling handwriting on other devices may be possible in the future but is not supported at the moment.

Storage access is required to manage notes, assets, and to observe PDF backgrounds, which need “all files access”. The database is stored at Documents/natabledb to simplify backups and reduce the risk of accidental deletion. Exports are written to Documents/natable.


Export and Import

The app supports the following formats:

  • PDF — export and import supported. You can also link a page to an external PDF so that changes on your computer are reflected live on the tablet (see Working with LaTeX).
  • PNG — export supported for handwriting selections, individual pages, and entire books.
  • JPEG — export supported for individual pages.
  • XOPP — export and import partially supported. Only stroke and image data are preserved; tool information for strokes may be lost when files are opened and saved with Xournal++. Backgrounds are not exported.

Roadmap

Near-term

  • Better selection tools:
    • Stroke editing (color, size, etc.)
    • Rotate and flip selection
    • Auto‑scroll when dragging a selection near screen edges
    • Easier selection movement, including dragging while scrolling
  • PDF improvements:
    • Migration to a dedicated PDF library to replace the default Android renderer
    • Allow saving annotations back to the original PDF
    • Improved rendering and stability across devices

Planned

  • PDF annotation enhancements:
    • Display annotations from other programs
    • Additional quality‑of‑life tools for annotating imported PDFs

Long-term

  • Bookmarks, tags, and internal links — see issue #52, including link export to PDF.
  • Figure and text recognition — see issue #44:
    • Searchable notes
    • Automatic creation of tag descriptions
    • Shape recognition
    • Handwriting to Latex

Troubleshooting and FAQ

What are “NeoTools,” and why are some disabled? NeoTools are components of the Onyx E-Ink toolset, made available through Onyx’s libraries. However, certain tools are unstable and can cause crashes, so they are disabled by default to ensure better app stability. Examples include:

  • com.onyx.android.sdk.pen.NeoCharcoalPenV2
  • com.onyx.android.sdk.pen.NeoMarkerPen
  • com.onyx.android.sdk.pen.NeoBrushPen

Bug Reporting

If you encounter unexpected behavior, please include an app log with your report. To do this:

  1. Navigate to the page where the issue occurs.
  2. Reproduce the problem.
  3. Open the page menu.
  4. Select “Bug Report” and either copy the log or submit it directly.

This will open a new GitHub issue in your browser with useful device information attached, which greatly helps in diagnosing and resolving the problem.

Bug reporting with logs is currently supported only in notebooks/pages. Issues outside of writing are unlikely to require this level of detail.


Screenshots

Writing on a page Notebook overview Gestures and selection Image handling Toolbar and tools Page management PDF viewing Customization Settings

Working with LaTeX

The app can be used as a primitive second monitor for LaTeX editing — previewing compiled PDFs in real time on your tablet.

Steps:

  • Connect your device to your computer via USB (MTP).

  • Set up automatic copying of the compiled PDF to the tablet:

    Example using a custom latexmkrc:
    $pdf_mode = 1;
    $out_dir = 'build';
    
    sub postprocess {
        system("cp build/main.pdf '/run/user/1000/gvfs/mtp:host=DEVICE/Internal shared storage/Documents/Filename.pdf'");
    }
    
    END {
        postprocess();
    }

    It was also tested with adb push, instead of cp.

  • Compile, and test if it copies the file to the tablet.

  • Import your compiled PDF document into Notable, and choose to observe the PDF file.

After each recompilation, Notable will detect the updated PDF and automatically refresh the view.


App Distribution

Notable is not distributed on Google Play or F-Droid. Official builds are provided exclusively via GitHub Releases.


For Developers & Contributing

  • Project file layout: see docs/file-structure.md
  • Data model and stroke encoding: see docs/database-structure.md
  • Additional documentation will be added as needed
    Note: These documents were AI-generated and lightly verified; refer to the code for the authoritative source.

Development Notes

  • Edit the DEBUG_STORE_FILE in /app/gradle.properties to point to your local keystore file. This is typically located in the .android directory.
  • To debug on a BOOX device, enable developer mode. You can follow this guide.

Feel free to open issues or submit pull requests. I appreciate your help!


About

An alternative note-taking app designed specifically for BOOX e-ink devices

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Languages