An Org Mode file viewer for iOS and Android

Overview

Orgro

An Org Mode file viewer for iOS and Android

See https://orgro.org for a demo video

What is Org Mode?

Imagine a plain-text markup language like Markdown, but married to an application that is a literate programming environment and life organizer. In Emacs.

Why?

I started taking notes in Org Mode at work, then found myself wanting to view them on my tablet in meetings. By default on iOS you can't open an .org file at all, as the OS doesn't even know that it's plain text.

Other mobile Org Mode apps are focused on very different things like to-dos or task management; Orgro is instead first and foremost a viewer, letting you see and search the contents of your org files.

I also wanted to try writing a parser with PetitParser; the result powers this application and is available as a separate library, org_parser.

Features

  • Syntax highlighting for most Org Mode syntax structures
  • Expand and collapse sections, blocks, and drawers
  • Reflow text for easy viewing on narrow screens
  • Pretty table rendering
  • Functional external links and section links
  • Visibility cycling
  • Search
  • Narrowing
  • "Reader mode" where extraneous markup is hidden
  • Inline and block LaTeX rendering

See the manual for details.

Limitations

Orgro is a viewer. It does not support editing at all.

Many Org Mode syntax structures are highlighted but not meaningfully interpreted.

FAQ

See here

Get it

Orgro is available on the App Store, Google Play, and F-Droid, or you can build and install from source:

  1. Install Flutter
  2. Clone this repo
  3. Attach your device and do flutter run from the repo root

Support Orgro

If you like this app, please show your support by sponsoring the author ❤️

Comments
  • Add more fonts with good Unicode coverage

    Add more fonts with good Unicode coverage

    It seems like there's only one font used to cover non Latin scripts? When opening files contains text in Hebrew it seems to be possible to only use one font. Also, the fonts is sans serif, which great for heading but not so much for body text.

    enhancement 
    opened by oatmealm 14
  • Open preview from another app

    Open preview from another app

    Hi! I'm slowly adding some basic support for .org files in GitJournal (https://github.com/GitJournal/GitJournal/issues/463), initially only as plain text, and it would be a great step forward if I could simply call Orgro to preview the current file.

    Is there a way to open Orgro with the file content to be previewed? What would be the best way to achieve this? Does Flutter have some mechanism like Android Intents, where one could invoke Orgro with a string content to be previewed? Would you add the missing bits to make this work?

    Thanks!

    opened by alensiljak 12
  • Use local folder(s)

    Use local folder(s)

    Let me extract this proposal from #5, to allow some focus.

    Preface: As I mentioned in a comment there, Flutter has an option (at least on Android) to request permissions for a folder on external storage. This provides access to the whole tree below the selected location.

    Proposal: Allow opening a folder location on the device and reading all the files in there.

    • option to select a local folder
    • display the tree structure for the sub-folders
    • allow opening any .org file from the tree

    This relates closely to #34, as it would use direct access to the files, without the content provider, so the files could simply be re-read after they have been edited in an external editor.

    It will actually allow any sort of interaction with other applications in the OrgMode ecosystem, as well as having attachments, relative links, images, etc.

    enhancement 
    opened by alensiljak 12
  • Support opening relative links

    Support opening relative links

    It would be nice to support opening relative file links like [[./other_file.org][related text]].

    Issues:

    • Is it even possible to resolve a URI relative to one that we have obtained permission for?
      • Maybe we can prompt for permissions, e.g. show the file picker with the target pre-selected?
    • How should the file open?
      • Push a new route on top of the current?
      • Or close the current and open the new file?
    enhancement 
    opened by amake 12
  • Display remote images inline

    Display remote images inline

    More specific than #22, this request is only for displaying the remote images inline. Local images and attachments are cumbersome due to different ways of accessing the files by different platforms and applications. Hence, some images may be stored online and referenced from within a note. The images don't change as often as text, so this is one way of solving a big part of the problem. The option should have a toggle switch in the preferences. The displayed images should scale so that they fit the screen. Large images may need to be opened by tapping on them.

    By remote, I mean the HTTP(S) URLs. The supported extensions should be recognised automatically. Png, jpg, svg, gif, webp would be my preference.

    enhancement 
    opened by alensiljak 11
  • Allow quick access to recently viewed files

    Allow quick access to recently viewed files

    I think one thing that would improve Orgro is a list of recently opened files, say the last 5 or 10?

    Perhaps some weight based system so it's the most commonly visited files plus the most recent file?

    As an an example of my use case, I have a cookbook.org file that I store recipes in, and I tend to open it commonly on my phone. Ditto for my monthly journal as well.

    I suppose the possible trickiness may come in making sure that references are updated for moved files, and deleted files are able to be removed from the recents list!

    Unfortunately I don't know Dart at all, so I'm not able to even attempt to try and contribute this myself but I've opted to become a Github sponsor since I'd like to see Orgro able to grow :)

    enhancement 
    opened by marcus-crane 11
  • Improve layout on large screens and with large font sizes

    Improve layout on large screens and with large font sizes

    When I view an org file on an iPad, the contents appeared to be right justified. When adjusting the file size, I now realise that it is just wasted space on both left an right sides. This is made apparent by increasing the font size until line wrap happens. There is no need to wrap the content. Don't waste my screen space!

    image

    Here is another reveal:

    image

    enhancement 
    opened by permezel 10
  • LaTeX blocks with tags don't render correctly

    LaTeX blocks with tags don't render correctly

    As reported in https://github.com/amake/orgro/issues/22#issuecomment-828373842, a LaTeX block with a tag (implied or otherwise) will render with the tag overlapping the main body:

    \begin{equation}
    a + b = c
    \end{equation}
    

    IMG_1927

    bug 
    opened by amake 10
  • Add Ukrainian localization

    Add Ukrainian localization

    Description

    Remind me if i forgot something

    Copyright assignment

    Pull request authors must assign the copyright of their contributions to the author of Orgro, @amake (find out why).

    • [x] I hereby assign the copyright for the contributions herein to @amake. I understand that I will no longer retain any rights relating to the contributions except those provided by the GPL-3.0 license.
    opened by ghost 8
  • Android: Change Filepicker

    Android: Change Filepicker

    Is it possible to change the filepicker when clicking on +? The stock filepicker is not the best one for finding .org files.

    Edit: Related to https://github.com/amake/orgro/issues/18

    On a sidenote: The drawback of a filepicker in general is that you cannot see the #+TITLE when searching. This makes searching for a file much more cumbersome compared to searching by document title, e.g. implemented in org-roam as org-roam-find-file

    I would like to contribute to this project but I have some troubles setting up Android Studio + Flutter + Emulator, especially performance wise. Do you have any resources/advice to make it easier?

    opened by AlessandroW 8
  • LOGBOOK drawers not parsed correctly

    LOGBOOK drawers not parsed correctly

    Hi,

    The PROPERTIES drawer are displayed nicely but It would be great if Orgro could display other drawers, such as LOGBOOK the same.

    Thanks for great piece of software Screenshot_20210130-002710_Orgro

    bug 
    opened by psamim 8
  • Add different themes

    Add different themes

    It would be nice to have support for different themes in orgro.

    Examples that come to mind is mainly the darkmode version of doom one.

    doomthemes has many really cool looking ones.

    enhancement 
    opened by riccardovarenna 0
  • Jump to search entries; 'Next' and 'Previous' buttons for search

    Jump to search entries; 'Next' and 'Previous' buttons for search

    I understand how search works, but it would be more user-friendly if after searching for whatever text the user might search for, it jumps to the first entry. And if there are multiple entries of said text, the user then has the option to press a button that jumps to the next entry. There can also be another button for the previous entry.

    enhancement 
    opened by SomeGitboi 1
  • File content stale with Dropbox on Android

    File content stale with Dropbox on Android

    I cannot find a way to update a file from Dropbox that has been updated since it was first opened. Saw https://github.com/amake/orgro/issues/12 but still not clear how this is supposed to work.

    bug 
    opened by pshangov 3
  • attachment: link handling

    attachment: link handling

    I suppose this is a feature request.

    Currently, orgro does not appear to handle attachment: links properly, even though they're technically just a glorified species of file: links with a separately specified location.

    Given an org file like

    #+TITLE: Orgro attachment test
    
    * This is a test :ATTACH:
    :PROPERTIES:
    :DIR:      orgro-test
    :END:
    
    This is a test of how orgro hangles attachments.
    
    [[attachment:that-image.jpg]]
    
    

    and an accompanying orgro-test/that-image.jpg I would expect the image to be rendered, yet it definitely isn't. In fact, clicking on it results in "No activity found to handle intent..."

    enhancement 
    opened by Mihara 1
  • Attempt to open .eps files as text

    Attempt to open .eps files as text

    The program tries to open EPS files. It opens them as text files. For example, Gmail could show these files in emails, but after installations of ORGRO the files are opened by ORGRO as text files. It would be fine if ORGRO could show EPS files, but if it can not, it would be better not to try to.

    bug 
    opened by YuriySharlai 2
Owner
Aaron Madlon-Kay
I get around like sushi on the kaiten.
Aaron Madlon-Kay
GrowERP Flutter Administrator front-end & Hotel & Ecommerce for Android, IOS and Web using Moqui.org, Apache OFBiz

Welcome to flutter open source GrowERP. GrowERP is an open source multi platform ERP application you can try right now! We have latest test version at

GrowERP 11 Dec 24, 2022
Yet another booru viewer for Android

Yet another booru imageboards viewer for Android Download Preview Click Here Building You can build this app just like any other flutter app, for exam

Nauval Rizky 126 Dec 27, 2022
A simple flutter app that downloads a file from the internet, shows a custom-made download progress dialog and saves the file to device's internal storage

http_downloader A simple flutter app that downloads a file from the internet using the http plugin. It has a custom-designed progress dialog which dis

Akora Ing. Debrah Kwesi Buabeng 4 Apr 6, 2021
Flutter file based routing - File based routing and nested layouts for Flutter

Flutter File Based Routing I was inspired by the routing in remix.run with neste

Rody Davis 10 Sep 29, 2022
This project is a rebuild of the existing movie colony https://github.com/debbsefe/Movie-Colony. Here's also a link to the figma file https://www.figma.com/file/XpLFNEsROiN1z6lwnNHMrU/Movie-app?node-id=2956%3A10161

Tvfiy Generated by the Very Good CLI ?? A Very Good Project created by Very Good CLI. Getting Started ?? This project contains 3 flavors: development

Eferha Mamus 3 Nov 12, 2022
A widget based on Flutter's new Interactive Viewer that makes picture pinch zoom, and return to its initial size and position when released.

pinch_zoom A widget based on Flutter's new Interactive Viewer that makes picture pinch zoom, and return to its initial size and position when released

Teun Kortekaas 36 Dec 30, 2022
News App developed with Flutter featuring beautiful UI, category-based news, story for faster news reading, inbuilt article viewer, share feature, and more.

Ariel News App developed with Flutter featuring beautiful UI, category-based news, story for faster news reading, inbuilt article viewer, share featur

Hash Studios 30 Nov 9, 2022
Iridium-reader-widget - Plug and play reader widget allowing to easily integrate an Iridium viewer inside any app

Plug and play reader widget allowing to easily integrate an Iridium viewer insid

Mantano 15 Dec 31, 2022
Iosish indicator - 🍎 Create awesome and simple iOS style floating indicator which can be found when silent/sleep mode switched on Flutter.

Iosish indicator - ?? Create awesome and simple iOS style floating indicator which can be found when silent/sleep mode switched on Flutter.

Kim Seung Hwan 2 Apr 1, 2022
A beautiful xkcd viewer app written with Flutter

xkcdViewer xkcdViewer is a simple comic viewer for the infamous xkcd webcomic built with Flutter ?? and ScopedModel for state management. Features ??

Kosta Stoupas 61 Sep 26, 2022
Derpibooru viewer made in Flutter

Chryssibooru Derpibooru client made with Flutter Todo Themes? Wontdo Likes Favourites Comments Anything that requires the user to log in, since Derpib

null 13 Dec 21, 2022
Production-grade project developed during the Reso Coder Academy Flutter Bootcamp: It's a mobile Github repository viewer

RepoStar - GitHub Starred Repository Manager Production-grade project developed during the Reso Coder Academy Flutter Bootcamp. It's a mobile Github s

Kishan Dhankecha 4 Aug 18, 2022
Sprite viewer / editor for the Game Boy Dev Kit

This is a graphic editor for GBDK inspired by GameBoyTileDesigner (GBTD) and GameBoyMapBuilder (GBMB). Online version game_boy_graphics_editor can run

DREVET Olivier 13 Dec 17, 2022
An advanced story viewer for Flutter. Quite easy & Quite advanced

AdvStory ?? Quite simple & Quite advanced ?? Advanced Story viewer for Flutter. Supports image, video and custom stories. Full control over stories fo

Ertuğrul Yakın 21 Nov 18, 2022
WooCommerce App template that uses Flutter. Integrated to work with WooCommerce stores, connect and create an IOS and Android app from Flutter for IOS and Android

WooCommerce App: Label StoreMax Label StoreMax - v5.3.1 Official WooSignal WooCommerce App About Label StoreMax Label StoreMax is an App Template for

WooSignal 314 Jan 9, 2023
A News App in Flutter using the newsapi.org API and using Bloc.

flutter_newsapp A News App using API from newsapi.org and using Bloc. Working ⚡ Screenshots =>=> ⚡ video Before Running Replace the <API_KEY> in lib/r

Arunoday kumar 11 Dec 9, 2022
Open source cross-platform client for popular imageboards: 4chan.org and 2ch.hk

iChan (iOS) and Zchan (Android) Open source cross-platform client for popular im

null 50 Dec 31, 2022
M.Yavuz Yagis 3 Feb 21, 2022
A simple flutter app that fetches weather data from openweathermap.org depending on your location or city you specify.

Clima ☁ My Goal The objective of this project is to learn about asynchronous programming in Dart. I'll be looking at how to carry out time consuming t

David-Legend 7 Sep 28, 2021