[HN Gopher] Monodraw
       ___________________________________________________________________
        
       Monodraw
        
       Author : saikatsg
       Score  : 825 points
       Date   : 2024-03-09 14:33 UTC (1 days ago)
        
 (HTM) web link (monodraw.helftone.com)
 (TXT) w3m dump (monodraw.helftone.com)
        
       | Brajeshwar wrote:
       | I love this tool. This is one of those that you buy it and keep
       | it, even if you use it once a while.
        
         | saikatsg wrote:
         | The website design is also neat.
        
         | dfee wrote:
         | Have you had this for a long time, or are you speculating that
         | it's the type of software you like?
         | 
         | This looks very cool to me, though. If you have used it, can
         | you share how you've used the generated diagrams? I can imagine
         | a screenshot of the diagram, but the raw text would probably be
         | too big in (e.g. a terminal).
        
           | ryanschneider wrote:
           | As other have mentioned I've used it for diagrams in code
           | comments and READMEs (before GH added mermaid integration).
           | 
           | Making readable diagrams with 80 character width can be a
           | challenge.
           | 
           | I bought it back in either late 2017 or early 2018 and used
           | it a fair amount at first but will admit it's been a couple
           | years since and haven't tried reinstalling since my last
           | clean OS wipe.
        
           | Brajeshwar wrote:
           | 1Passwords shows that I bought a license on April 6, 2017.
        
           | loganlinn wrote:
           | I bought license to Monodraw in 2018 and have used it off and
           | on since, so I can attest to GP
        
           | dorian-graph wrote:
           | > Have you had this for a long time ..
           | 
           | Similar to the OP, I've had it for years, and used it every
           | and now then through those years.
           | 
           | > .. can you share how you've used the generated diagrams?
           | 
           | The website mentions exporting in text and images. I use the
           | text importing (to clipboard), with "Trim trailing
           | whitespace".
           | 
           | > .. but the raw text would probably be too big in (e.g. a
           | terminal).
           | 
           | It's as big or small as you want it to be? With the obvious
           | constraints of the different banner styles. People have had
           | ASCII banners in consoles for decades, there's nothing new
           | about the ASCII banners from Monodraw.
        
           | jasonm23 wrote:
           | Try installing figlet, for banner text.
           | 
           | At its simplest:                   figlet "Text"
           | 
           | or use fonts                   figlet -f small "Small Text"
           | ___            _ _   _____        _         / __|_ __  __ _|
           | | | |_   _|____ _| |_         \__ \ '  \/ _` | | |   | |/ -_)
           | \ /  _|         |___/_|_|_\__,_|_|_|   |_|\___/_\_\\__|
        
       | grimgrin wrote:
       | what's the native linux alternative? aka not a webapp
       | 
       | edit: hm, maybe https://github.com/nkh/P5-App-Asciio
        
         | flylikeabanana wrote:
         | One way would be to use emacs' artist-mode to draw ascii lines
         | and boxes then use ditaa[1] to transform them into images. It's
         | not a pretty packaged GUI app but it's certainly an option
         | 
         | [1] https://ditaa.sourceforge.net/
        
         | amlib wrote:
         | Fairly new and barebones for now, but it is available as a
         | flatpak: https://github.com/Nokse22/ascii-draw
        
         | strobe wrote:
         | emacs artist mode also suitable for something like that
         | 
         | https://www.youtube.com/watch?v=1JZ6ljIRGus
        
         | fbdab103 wrote:
         | For anyone who is willing to use a webapp, I like drawio[0].
         | You can download locally[1] and self host (I just use the
         | python webserver).
         | 
         | While finding the Github, I see they now actually package an
         | Electron application, so that is probably worth exploring[2].
         | 
         | [0] https://www.drawio.com/
         | 
         | [1] https://github.com/jgraph/drawio
         | 
         | [2] https://github.com/jgraph/drawio-desktop
        
           | rihards__ wrote:
           | DrawIO feature to save editable PNGs (embedded diagram source
           | code) is absolutely magical.
           | 
           | The tool is quite basic, until you realize, you can create
           | reusable blocks (in scratchpad) with predifened style.
           | 
           | From that point on you just publish editable PNGs to git and
           | draw them rather quickly by dropping in predefined blocks.
        
         | MithrilTuxedo wrote:
         | I've been using PlantUML, having come from using GraphViz.
         | 
         | I can't tell is has any relation to this. I use it to generate
         | SVGs in Maven documentation site builds.
        
         | internetter wrote:
         | Also not native, but huydotnet mentioned this in another
         | comment and it looks great
         | https://github.com/tuanchauict/MonoSketch
        
         | yla92 wrote:
         | https://asciiflow.com/#/ works pretty well.
        
         | anthk wrote:
         | get gramscii and aamath
        
       | joshlemer wrote:
       | This went into "maintenance mode" in 2018, has anything changed?
       | https://blog.helftone.com/monodraw-maintenance-mode/
        
         | marcusjt wrote:
         | https://x.com/Monodraw suggests there have indeed been updates
        
           | graypegg wrote:
           | To be fair, the last tweet is from 2 years ago.
           | 
           | However, I've made pretty good use of it, and it's really a
           | "complete" product. Not much more to update than the
           | occasional mandatory platform upgrade.
        
         | airstrike wrote:
         | From the FAQ at the bottom
         | 
         |  _> Why not open source the app?_ _>_ _> Maintaining an open-
         | source project can be a significant amount of work and I 'm not
         | going to have the time to take on such responsibilities.
         | Furthermore, open-sourcing full products tends to result in
         | many clones being sold directly to unsuspecting customers which
         | is not something I want to enable._
         | 
         | It's strange how both of those statements are incorrect...
         | open-sourcing a project allows for contributors to pick up some
         | of the workload and certain licenses would prevent clones from
         | being sold to unsuspecting customers
        
           | arccy wrote:
           | a license doesn't magically stop bad things from happening.
        
             | airstrike wrote:
             | it doesn't, but it's a deterrent. the very fact that this
             | app had limited commercial success is reason to believe
             | there likely won't be "many clones", especially if they're
             | forced to go against the license
        
           | thenanyu wrote:
           | As someone who has worked on an open source product with a
           | commercial version, the FAQ matches my experience. I think
           | you're letting you're mixing up is and ought.
        
           | dorian-graph wrote:
           | Contributors don't magically appear. Maintaining a community,
           | reviewing changes, steering, etc. all take time and energy.
           | Again, contributors don't magically appear who can do those
           | things, who are aligned with the creator.
           | 
           | Licenses don't magically stop bad actors.
           | 
           | Both statements by the author are correct.
        
         | milen wrote:
         | Developer of Monodraw here.
         | 
         | Thank you all for the kind words regarding the app.
         | 
         | Unfortunately, my time is extremely limited which is why I
         | haven't had the chance to push more updates out.
         | 
         | I've got a few highly requested features in the works but I
         | cannot promise when they'll see the light of day (I usually get
         | to make progress during my holidays).
         | 
         | I'm still committed to fixing any breakages due to OS upgrades
         | and ensuring the product continues to work.
        
           | accessvector wrote:
           | Thanks for your work in making an excellent tool; I, and many
           | of my coworkers, use this. The price point is entirely fair
           | and it's a pleasure to use every time. But - above this -
           | thank you also for prioritising personal life above
           | development.
           | 
           | It's great as it is and we'll be happy to see new features
           | when you're ready. I would be really proud if I were in your
           | position.
           | 
           | Cheers!
        
             | milen wrote:
             | Thank you for the kind words!
        
           | hanniabu wrote:
           | Curious what some of the requested features are since it
           | seems feature complete to me
        
             | milen wrote:
             | The main requests have been for:
             | 
             | - Plaintext format (in progress) - Dark mode support for
             | the main canvas (in progress) - Auto/Dynamic Layout - Table
             | support - ANSI export
        
               | supertron wrote:
               | > Dark mode support
               | 
               | Hell yeah! I'm a long time user of Monodraw (thanks for
               | the awesome work!) and this would be an instant upgrade
               | for me :)
        
               | marcellus23 wrote:
               | What does "plaintext format" mean? Isn't it already
               | plaintext?
        
               | jasonm23 wrote:
               | to offer a guess, I assume plantext probably means plain
               | ASCII or maybe extended US ASCII (adds IBM box drawing
               | chars, etc.) As opposed to full unicode text charset.
        
           | nikolay wrote:
           | Thank you, Milen! It's nice to see Bulgarians being behind a
           | popular desktop app! I've been a paid user for years and
           | Monodraw is among the first apps I install when I get a new
           | MacBook machine!
        
           | dorian-graph wrote:
           | Thank you so much for Monodraw! I've used it on and off for
           | _years_.
        
           | cachvico wrote:
           | Hi - I'm not a user but I am reacting to obvious love many
           | developers have for your app.
           | 
           | Have you thought about open-sourcing it?
           | 
           | Or even keeping it closed source but crowd-sourcing help?
           | 
           | No need for profit sharing - your income is a nominal
           | management fee if that. Just need a nice credits page to give
           | thanks to the names of the people who contributed.
           | 
           | Might work?
        
       | z5h wrote:
       | Owned this for years, and regularly use it to brainstorm, and
       | sometimes I'll add ascii diagrams to code comments.
        
       | huydotnet wrote:
       | Awesome tool! Also, for the web version, my friend made an
       | alternative written in Kotlin
       | https://github.com/tuanchauict/MonoSketch
       | 
       | I also have a half baked version in Rust too
       | https://github.com/huytd/ascii-d
        
       | sebastianconcpt wrote:
       | I love this tool!
       | 
       | I've used it to do diagrams for Mapless:
       | 
       | https://sebastianconcept.github.io/Mapless/guides/2024/01/28...
       | 
       | And to document this Pharo VM Plugin builder setup:
       | 
       | https://github.com/sebastianconcept/PharoPluginBuilder
        
         | James_K wrote:
         | So you used an ASCII drawing tool to draw these diagrams in
         | text then took a screenshot of them and uploaded to your
         | website? That seems like such a convoluted way to draw a few
         | rectangles. Isn't there an easier way?
        
           | k12sosse wrote:
           | Think different.
        
           | mjochim wrote:
           | Doesn't seem more convoluted than any other drawing tool to
           | me. The UI of Monodraw appears to be pretty similar to
           | "regular" drawing software.
        
           | subjectsigma wrote:
           | 1. You can just "Save as" to PNG, it takes no time or effort.
           | 
           | 2. I use to use Monodraw exclusively for making diagrams in
           | source code, but over time I've become so comfortable with
           | the tool, keyboard shortcuts, etc. that now I just use it for
           | all diagrams. It's a very nice tool.
        
             | James_K wrote:
             | If you feel the need to embed giant ASCII diagrams into a
             | source file, I think you should just use a picture. Like a
             | .png or .svg or something and write the documentation in
             | another file. Or even maybe try out rich text source code.
        
               | aidenn0 wrote:
               | Please don't do things like this that make it harder for
               | people to read your comments.
        
               | James_K wrote:
               | Writing documentation is typically an addition to writing
               | comments. They serve different purposes. That said,
               | adding a diagram to a comment will only make it easier to
               | read. It is an addition. It cannot make things harder.
        
               | zelphirkalt wrote:
               | If only it were true, that additions cannot nake things
               | harder to read.
        
               | James_K wrote:
               | In this case, it is absolutely true. It is the difference
               | between:                 // some comment
               | 
               | and                 // some comment       // additionally
               | see ./diagram.png
               | 
               | Diagrams are often useful tools for communicating
               | information.
        
               | aidenn0 wrote:
               | That's not the difference I'm talking about; I'm talking
               | about the difference between                 // some
               | comment       // ... 25 lines of a diagram
               | 
               | and                 // some comment       // additionally
               | see ./diagram.png
        
               | misnome wrote:
               | Thanks! I'm sure they never thought of that!
               | 
               | Or maybe they did, and there are advantages and tradeoffs
               | to any approach.
               | 
               | I'm sure your unique insight must be right, though.
        
               | James_K wrote:
               | You don't need to get so annoyed on someone else's
               | behalf. I am just putting my opinion out there -
               | specifically that I would prefer just an image file that
               | is referenced from a comment. I'm sure this person knows
               | what an image is; I was not trying to imply that they
               | didn't.
        
               | subjectsigma wrote:
               | The diagrams I am pasting in are usually like 80 x 40
               | chars and keep you from having to tab out into
               | documentation. They don't change often so they don't
               | create messy diffs. I don't think that's unreasonable.
               | Nobody on my team seems to mind. I don't think this is a
               | problem and I'm having trouble understanding why you
               | think it is.
               | 
               | If you're wondering why I need diagrams in source code,
               | then the answer is I usually don't _need_ them but it
               | helps. The only project where they were game changing was
               | where we were using Neo4j as a backend and being able to
               | clearly diagram the data model was really helpful.
        
               | James_K wrote:
               | I don't really have much of an issue with it. It's got
               | bad vibes by association. I find it a little annoying how
               | much stuff is done with text, and this is just a small
               | part of that.
        
           | Terretta wrote:
           | At least for the README, the diagram remains text in three
           | backticks.
        
           | sebastianconcpt wrote:
           | In the second link, about the Smalltalk VM plugin, you can
           | see is pre-formatted text in markdown.
           | 
           | In the Mapless guide, when I've kept it as text (as the first
           | preferred way to have it done) it became challenging to make
           | it work for all screen sizes and an image was the "good
           | enough" approach for the case.
        
         | lsllc wrote:
         | Love this too -- I use this to document source code, being able
         | to visualize a buffer or structure layout in the code is so
         | nice!
        
       | ThinkBeat wrote:
       | Funny. The front page (still) states:
       | 
       | "We're a small studio that loves to make delightful apps. We just
       | launched Monodraw."
       | 
       | The blog says:
       | 
       | Maintenance Mode With immediate effect, Monodraw is entering
       | maintenance mode. This means that there will be no more updates
       | in the future. While I'll be aiming to provide OS compatibility
       | updates, if required, those are not guaranteed. Accordingly, the
       | price has been reduced from $19.99 to $9.99.
       | 
       | Why?
       | 
       | Monodraw was released in May 2015, about three and a half years
       | ago. Unfortunately, it did not achieve commercial success and it
       | meant I had to get a job. In the years that followed, I could
       | only work on Monodraw in my spare time. Due to recent changes in
       | my life, I can no longer devote any meaningful time to the app.
       | ""
       | 
       | https://blog.helftone.com/monodraw-maintenance-mode/
        
         | andai wrote:
         | And thanks to being proprietary, no one else can devote time to
         | it, either.
        
           | jorts wrote:
           | It's perfectly fine that it's proprietary. Just because it
           | exists doesn't mean other people are entitled to the source
           | code.
        
             | andai wrote:
             | I agree. Nobody owes anyone anything!
             | 
             | I was merely pointing out that it's a shame that
             | 
             | (1) it has apparently been abandoned for years,
             | 
             | (2) people are not able to do anything about that.
             | 
             | (Bus factor == 1, etc.)
             | 
             | Based on the other comments in the thread, I'm sure there
             | are people who would love to contribute.
             | 
             | (Worth pointing out that making something open source isn't
             | zero-maintenance by any means, especially since GitHub
             | still doesn't let you disable pull requests...)
        
             | galaxyLogic wrote:
             | There's a cost to open-sourcing code. It takes effort. You
             | must write documentation and clean up your code in many
             | ways. It's good to "clean up code" of course but is that
             | the most urgent thing on your task-list?
             | 
             | Who should pay for that effort? The original author? Yes if
             | they think it's worth it and they can afford to spend the
             | time on it.
             | 
             | There's also a risk whenever you publish source-code,
             | someone might sue you for copyright infringement, or patent
             | violation, etc.
        
           | milen wrote:
           | I've toyed with the idea of open sourcing the product. I
           | reached the conclusion that it's not the approach for two
           | main reasons:
           | 
           | - I believe in a strong, centralised product vision and
           | execution - The code will be packaged up and sold by
           | unscrupulous people who will not contribute back
           | 
           | I'm a strong advocate of interoperability and open data
           | formats. The Monodraw data format is not proprietary and I do
           | have plans for a plain text format (currently, it's just
           | zipped JSON which doesn't play nice with VCS).
           | 
           | Interoperability is key to competition and avoiding lock-in,
           | so I'll push in that direction as my time permits.
        
             | techn00 wrote:
             | > The code will be packaged up and sold by unscrupulous
             | people who will not contribute back
             | 
             | Choose a good license then
        
               | milen wrote:
               | A license wouldn't stop the unscrupulous people, they'll
               | keep making clones of it and ignoring the license.
               | 
               | This means I have to start chasing any clones, engage
               | legally and try to take them down. It's just not worth
               | the time - I would rather spend the time on improving
               | Monodraw instead.
        
               | synthmeat wrote:
               | To voice support for current state - do what you're
               | already doing, and I agree on focusing on opening up the
               | format.
               | 
               | Don't hesitate to charge for v2, if improvements pile up
               | and you have affordances to do so. Will gladly pay.
               | 
               | It's pretty great already as-is. Thank you.
        
               | josephcsible wrote:
               | If unscrupulous people are willing to ignore the license
               | anyway, wouldn't they just hex edit to change the
               | branding to sell clones even while it's closed source?
        
             | lumb63 wrote:
             | I understand your concerns about open-sourcing the codebase
             | and won't try to convince you otherwise. It's your code.
             | 
             | That said, I would like to share my perspective on the
             | subject, having given some thought to if/how I should open
             | source my code. I don't feel that I have any ground to
             | stand on if I were to choose _not_ to open source my code.
             | That same code would be uploaded to the internet using a
             | web browser or other tool that is open source. That code is
             | probably compiled or interpreted by a tool that's open
             | source. For me, it all runs on an operating system that's
             | open source. Nearly everything that I am able to do as a
             | software developer is built on the shoulders of giants who,
             | out of kindness and conviction in their beliefs, chose to
             | make an entire ecosystem of software available to the
             | world, with source code available, free of charge. I feel
             | that I owe it to the world to pay that legacy forward.
        
               | andai wrote:
               | Aye, but you're commenting on a Mac program, which is
               | necessarily developed on a closed, anti-competitive
               | system (and in the context of that ecosystem, accepting
               | it as normal). GP lives in a much darker world than you.
        
             | andai wrote:
             | > I believe in a strong, centralised product vision and
             | execution
             | 
             | Fair point! I'm reminded of this quote from Jaron Lanier:
             | 
             | > Why are so many of the more sophisticated examples of
             | code in the online world--like the page-rank algorithms in
             | the top search engines or like Adobe's Flash--the results
             | of proprietary development? Why did the adored iPhone come
             | out of what many regard as the most closed, tyrannically
             | managed software-development shop on Earth?
             | 
             | >An honest empiricist must conclude that while the open
             | approach has been able to create lovely, polished copies,
             | it hasn't been so good at creating notable originals. Even
             | though the open-source movement has a stinging
             | countercultural rhetoric, it has in practice been a
             | conservative force.
             | 
             | I love free software, yet most of the software I use is
             | proprietary. (I consider my own apathy as contributing to
             | the problem...)
             | 
             | As for this point,
             | 
             | - The code will be packaged up and sold by unscrupulous
             | people who will not contribute back
             | 
             | an interesting example is Jason Rohrer, who has open
             | sourced all (?) his games.
             | 
             | The way he got around this is that he made a multiplayer
             | game, where the $20 in effect gave you access to the main
             | server. People indeed repackaged his game, sold it on other
             | platforms etc. Yet last I checked, he was doing better than
             | ever. (Probably cause he keeps pushing out updates to keep
             | the game interesting.)
             | 
             | Not sure how well this works for "single-player software",
             | although Aseprite seems to be doing all right. (Though
             | technically not free software anymore, despite being open-
             | source...)
        
               | hn_acker wrote:
               | Nitpick: Aseprite is source-available, not open source by
               | the Open Source Initiative's definition. From the
               | Aseprite EULA [1]:
               | 
               | > (g) Source code.
               | 
               | > You may only compile and modify the source code of the
               | SOFTWARE PRODUCT for your own personal purpose or to
               | propose a contribution to the SOFTWARE PRODUCT.
               | 
               | The OSI's definition of open source [2] permits
               | distribution of unmodified and modified copies (with the
               | exception of _lone_ , unmodified copies; I read somewhere
               | that adding a hello world program is a workaround):
               | 
               | > 1. Free Redistribution
               | 
               | > The license shall not restrict any party from selling
               | or giving away the software as a component of an
               | aggregate software distribution containing programs from
               | several different sources. The license shall not require
               | a royalty or other fee for such sale.
               | 
               | ...
               | 
               | > 3. Derived Works
               | 
               | > The license must allow modifications and derived works,
               | and must allow them to be distributed under the same
               | terms as the license of the original software.
               | 
               | "free software" is ambiguous to English speakers/writers,
               | but "open source" is ambiguous in its own way.
               | 
               | By the way, there is a "Fork of the last GPLv2 commit of
               | Aseprite" called Libresprite [3].
               | 
               | [1]
               | https://github.com/aseprite/aseprite/blob/main/EULA.txt
               | 
               | [2] https://opensource.org/osd
               | 
               | [3] https://github.com/LibreSprite/LibreSprite
        
         | milen wrote:
         | Developer of Monodraw here.
         | 
         | I haven't updated the official website (priorities and lack of
         | free time).
         | 
         | I've pushed out some updates after the maintenance mode
         | announcement but the frequency is not guaranteed since my free
         | time is extremely limited.
         | 
         | I'm still committed to fixing any breakages due to OS upgrades
         | and ensuring the product continues to work.
         | 
         | While I have some new features in the pipeline, I cannot commit
         | to any timelines as I don't know when I will ship them.
         | 
         | I want to thank everyone who's supported the product throughout
         | the years, it means a lot to me.
         | 
         | Happy to answer any further questions.
        
           | commandersaki wrote:
           | It may not have reached commercial success, but to me it's
           | the best commercial application on MacOS. Nothing comes close
           | in value.
        
         | lsllc wrote:
         | Please not more app-store abandonware. I have a decent amount
         | on both my phone and my MBP. Sad to see, I really liked
         | Monodraw for creating ASCII illustrations for source code (e.g.
         | buffer layouts etc).
         | 
         | Of course, probably it'll be ok for a while, but then some App
         | Store API or updated processor requirements will render it
         | unusable like so many others (particularly on iOS).
         | 
         | So now I've got several abandonware apps that I paid for:
         | Things (v1), Quiver, Artboard and now Monodraw. I can't say
         | _any_ of them really had any non-minor updates since I got them
         | certainly not features (yes, I realize Things did a separate V2
         | app ... but I wasn 't happy about that happening so soon after
         | buying V1). I do realize some of this is Apple's fault in the
         | way the store is structured.
         | 
         | Too bad Apple doesn't enact some sort of source-code escrow
         | such that if an app is abandoned, the source gets published,
         | but with owner-copyright retained so no-one can resell -- as
         | part of the T&C of submitting an app. Maybe after 1 year of
         | abandonment for a "big" company and 2 years for indie-dev apps.
         | 
         | *EDIT*: Happy to see Milen's sibling comment about fixing
         | breakage!! I realize you have to make a living -- is there a
         | way to contribute for these new features (or is it a totally
         | new app -- which is fine!).
        
           | milen wrote:
           | > _EDIT_ : Happy to see Milen's sibling comment about fixing
           | breakage!! I realize you have to make a living -- is there a
           | way to contribute for these new features (or is it a totally
           | new app -- which is fine!).
           | 
           | I've considered the idea of letting other developers have
           | access to the source code and help with the development.
           | Unfortunately, I couldn't figure a way to make it fair -
           | e.g., if someone starts contributing, do they start receiving
           | a percentage of the proceeds? What's a fair percentage and
           | what about multiple external contributors?
           | 
           | I could never come up with a workable model, so it's either
           | fully open-source or proprietary. As I mentioned in another
           | comment, I believe the way to go is an open data format which
           | allows interoperability. This way there's no lock-in and
           | competing apps (open or closed) can exist.
           | 
           | For what it's worth, the Monodraw data format is not secret,
           | it's just compressed JSON. I haven't documented it because
           | it's more of an implementation detail and I'd rather spend my
           | very limited time on improving the product.
           | 
           | Hope that provides a bit more context.
        
             | lsllc wrote:
             | Thank you for the comment, apologies if I came off a bit
             | antagonistic! It's just a little frustrating when you see
             | really great apps potentially ending.
             | 
             | It's really too bad there's not a better indie-dev model
             | for the App Store, if I am buying an app (I think maybe I
             | maybe paid $19 for Monodraw -- totally worth it btw), am I
             | buying the app as-is? or do I get updates ... if so how
             | long should I expect to get them and are the updates minor
             | fixes or bigger whizbang features.
             | 
             | I can see that once an app gets to a steady state, there's
             | probably diminishing returns in putting a lot of effort
             | into new features esp. if your market is small. On the
             | other hand, if the app has some sort of subscription, now
             | there is an expectation for updates (not unreasonable, but
             | possibly the numbers might not work for the developer).
             | 
             | I think Pixelmoter sort of got this right, although they
             | did release a Pro version separately (which I also bought).
             | However, I suspect they're a much larger company and
             | probably have quite a large market share and can afford to
             | continue to release updates to keep it fresh (and for
             | someone like me, the app is exactly what I need vs. say
             | photoshop and the price point is reasonable).
        
           | andai wrote:
           | At this point, the only apps worth using were released 10
           | years ago, and have all been removed from Play Store. I have
           | to either use my own backups or download sketchy APKs. I'm
           | not exaggerating, today I tried a number of shoddy disk space
           | analyzers full of bloat and ads, until giving up and just
           | using one from 2014... (except it'd been deleted, so I had to
           | do a bit of digging.)
        
       | zokier wrote:
       | Stretching the idea of "plain text" quite far imho.
        
       | Solvency wrote:
       | These used to be called Macro Shops back in the 90s AOL
       | prog/punter scene.
       | 
       | There used to be thousands of truly incredible ASCII macro
       | artworks. This is barely scratching the surface.
       | 
       | https://i0.wp.com/justinakapaste.com/wp-content/uploads/2014...
        
       | paulirish wrote:
       | Looks nice. https://asciiflow.com/ is a web-based alternative
       | that's been my go-to for a decade.
        
         | russellendicott wrote:
         | I use ASCIIFlow all the time. I still haven't figured out how
         | to get browsers to render the monospace fonts correctly see
         | example diagram on this page: http://uggly.bytester.net/#how-
         | it-works
        
           | Retr0id wrote:
           | Looks fine on my machine - my guess is that your primary font
           | does not contain all the glyphs used (e.g. the box-drawing
           | chars), so its falling back to another font just for those
           | glyphs, causing inconsistencies.
        
             | russellendicott wrote:
             | It seems to only mess it up on mobile. Desktop Chrome seems
             | fine. Mobile Chrome is all I've tested on.
        
               | Retr0id wrote:
               | Ah, in that case you might want:                   text-
               | size-adjust: none;         -webkit-text-size-adjust:
               | none;
               | 
               | (it's infuriating that these options need to exist!)
        
               | golem14 wrote:
               | How do you set options for chrome on iPhone and android?
               | 
               | Sorry for the naive question, I never figured this out.
        
               | Retr0id wrote:
               | These are in-page CSS controls, not browser config
               | options (no idea how those works, I avoid mobile
               | platforms)
        
               | jasonm23 wrote:
               | You could use a browser that supports extensions on
               | Andriod, iOS will protect you from such _nefarious_
               | things though.
        
               | Retr0id wrote:
               | iOS supports browser extensions, and has done for some
               | time - e.g. https://apps.apple.com/us/app/makeover-
               | custom-css/id16023611... (which demonstrates custom HN
               | CSS in the demo screenshots!)
        
           | tracker1 wrote:
           | First is using a monospace font, second is aligning line
           | height to font height. Third includes a bit of tweaking and
           | trying different sizes.
           | 
           | Your best bet is to use a good fixed width don't with broad
           | character support. Some are better or worse than others.
           | Cascadia Code and Fira Code work pretty well with differing
           | characteristics and both have nerd don't variants.
           | 
           | Emoji alignment is another problem.
        
         | Veuxdo wrote:
         | Doesn't look like screen readers can read the text on these.
        
           | Retr0id wrote:
           | I believe you can treat it as if it were an image by putting
           | it an element with attributes role="img" aria-
           | label="description of the diagram goes here"
           | 
           | https://developer.mozilla.org/en-
           | US/docs/Web/Accessibility/A...
        
             | Veuxdo wrote:
             | The problem is, having to describe a diagram using text
             | defeats the purpose of the diagram. Must better is to use
             | diagrams that render as SVG, so screen readers can read
             | them. [0]
             | 
             | [0] https://accessibility.princeton.edu/how/design/images-
             | text
        
               | Retr0id wrote:
               | A flowchart involving labeled boxes with arrows between
               | them is going to be more accessible as an SVG than a PNG,
               | sure, but you're still going to need to explain what the
               | arrows are doing, otherwise a screenreader user will be
               | quite lost.
        
       | seer wrote:
       | OMG this is one of my favorite tools paid for it all the way back
       | when it went out. Have used it so many times just to write
       | documentation for things like:
       | 
       | https://github.com/ivank/potygen/blob/main/packages/potygen/...
       | 
       | ASCII is just so versatile and allows you to put nice graphics in
       | places where one does not expect, making things more easily
       | understandable.
        
         | mixmastamyk wrote:
         | Those corners look like Unicode block chars.
        
           | diggan wrote:
           | ASCII means more than just characters from the ASCII
           | character standard today, for better or worse. The "modern"
           | translation would be something like "text".
           | 
           | I don't agree or disagree with it, so don't argue with me,
           | just trying to explain how people use it today.
        
             | mixmastamyk wrote:
             | Anyone can write that a word no longer has its defined
             | meaning. That can't even be refuted, as it's certain
             | someone is confused somewhere.
             | 
             | However, ASCII is not a random ancient word, it's a
             | ratified standard. Would be like calling any datetime
             | format "ISO8601".
        
               | samatman wrote:
               | Context is important, ya know? If we're talking about
               | text encodings, that's one thing, but we're talking about
               | drawing. "ASCII text" drawing was never entirely limited
               | to ASCII even in the days of single-byte encodings. There
               | were code pages which used the high bit for more useful
               | drawing glyphs, people took advantage of that when they
               | could.
               | 
               | The concept of an extended ASCII encoding goes way back:
               | https://en.wikipedia.org/wiki/Extended_ASCII, and UTF-8
               | is just another extended ASCII encoding, albeit a very
               | clever one, with a lot of codepoints.
        
               | mixmastamyk wrote:
               | Extended supersets of a thing are not the thing, they are
               | a larger group.
        
               | diggan wrote:
               | > However, ASCII is not a random ancient word, it's a
               | ratified standard
               | 
               | Even so, ask around and you'll find debates about which
               | ASCII standard is the "right" and "true" one. Some argue
               | only the initial standard is correct for ASCII art, you
               | need to follow that, others say any of the versions are
               | alright.
               | 
               | It's still ambiguous.
        
           | eichin wrote:
           | Yeah, "BOX DRAWINGS LIGHT UP AND LEFT" and "BOX DRAWINGS
           | LIGHT DOWN AND LEFT". (If this were ASCII, it would have used
           | | ("VERTICAL LINE") instead of "BOX DRAWINGS LIGHT
           | VERTICAL".)
        
           | tzot wrote:
           | I believe here ASCII was used not as in ASCII-the-standard
           | but as "ASCII" in ASCII-art. I also believe that ASCII art
           | should actually be called "monospaced Unicode text" since
           | people doing ASCII art have been using as many codepoints as
           | were available in their platform of choice.
        
         | jvanderbot wrote:
         | You should select the lines you'd like to show off and link
         | that.
        
           | diggan wrote:
           | You should do a quick scan of the file, it's filled with
           | graphs in the comments, not just one.
        
             | jvanderbot wrote:
             | I did. Sorry, linking seemed like a good idea so it was
             | just a suggestion. Maybe OP didn't know that was possible.
        
         | echelon wrote:
         | This is a fantastic illustration that sells the software for
         | me. Thanks for sharing! I'll have to look into this.
        
         | eichin wrote:
         | Hmm, the "With Expression" diagram on line 656 looks fine in
         | emacs, but in chrome at that actual link, everything on the
         | right is mangled. (The _characters_ look fine, it looks like
         | github 's font choices do poorly with the "load bearing
         | whitespace" for the extended bits...)
        
           | Thorrez wrote:
           | I think it's the < character. It looks like Chrome (I'm on
           | Windows) makes it wider than other Characters. I think > has
           | this same problem. But from a quick scan, I don't see any
           | other place in the file where one of those characters is used
           | in a way that it being extra wide would be noticable.
        
             | tracker1 wrote:
             | For web it'll really vary by font family availability and
             | fallback. Personally I like the nerd don't variant for
             | Inconsolata, Cascadia Coffee and Firs Code for fixed width
             | usage.
             | 
             | I wish self packaging similar to how Google Fonts does it
             | was easier to do. IE breaking up the don't into glyph
             | segments to reduce unused characters for languages not
             | used.
        
             | simonjgreen wrote:
             | Just observing, I think this is the first time I've seen
             | Unicode symbols outside of basic Latin rendering on HN.
        
               | junon wrote:
               | I've always wanted to try this but never had a reason: do
               | emojis work on HN? I've never seen one and didn't know if
               | it was just a culture thing or if it was enforced:
               | 
               | (tm)
               | 
               | EDIT: Nope! All but the TM "emoji" got stripped.
        
       | notnmeyer wrote:
       | monodraw has been one of my favorite diagramming tools, but never
       | seemed to be popular with the folks i worked with.
        
         | russellendicott wrote:
         | Yeah, I'm known as the ASCII diagram guy at work because I use
         | ASCIIFlow a lot. Still not sure if people think I'm a joke.
         | 
         | https://asciiflow.com/#/
        
       | thom wrote:
       | I've used this in the past and enjoyed it. My one complaint, if I
       | recall, is that you have to use its own built in file format to
       | maintain all the cool features like anchors and resizable boxes
       | and stuff. You can't just point at at an ASCII drawing in a
       | markdown document and get all the functionality for free. I
       | suspect if someone really wanted to they could crack that through
       | clever algorithms and LLMs - and I've extensively used the latter
       | to work on first drafts of ASCII diagrams to some success. But
       | I've never found a good balance of maintainability (i.e. a box is
       | a box and I can move it and have its connections follow it
       | around) and portability (everything really is just pure text). If
       | I'm wrong about recent versions of Monodraw or something else
       | achieves this I'm all ears! I certainly had more success with
       | Monodraw than artist mode in Emacs, at least.
        
         | xp84 wrote:
         | Interesting take. Do you have a lot of existing diagrams you'd
         | like to manage? If I'm starting from scratch, I would sort of
         | expect/want to have the abstract file format like this, seeing
         | it as like a PSD, and the output as a rendered, flat image like
         | PNG. Or source code vs. binary. Parsing an output artifact back
         | into a more semantic and abstract form is hard to get perfect,
         | I would imagine.
        
           | thom wrote:
           | There are times when I've wanted architecture diagrams to be
           | ASCII in markdown, meant to be consumed through GitHub or in
           | a Backstage portal or something. For me, the ideal workflow
           | would be to just be able to edit those inline but still have
           | cool editor features. Maintaining a separate file is just
           | hassle, and it's hard enough trying to keep diagrams alive as
           | part of documentation as it is.
        
       | mechanicker wrote:
       | Awesome tool I purchased when I stumbled upon it.
       | 
       | I draw flowcharts for complex implementations in ASCII using
       | Monodraw and embed them in source code.
        
       | mergy wrote:
       | Interesting. I have been spending a lot of time with Mermaidjs
       | for the last year or so and love it but not around ERDs because
       | of the inability to map field relationships the way I want. I
       | will check this out.
        
       | zekenie wrote:
       | *Love* monodraw. The last 2 times i was on the job market I used
       | monodraw extensively for little inline diagrams for my take-home
       | projects. It always was a big hit with the reviewers.
        
       | jvanderbot wrote:
       | Why isn't there a good CLI tool for specifying and rendering
       | these?
       | 
       | I'm imagining something like dot -Tascii
        
       | OneOfTheMicahs wrote:
       | How accessible are these diagrams to screen readers?
        
         | internetter wrote:
         | They aren't
        
       | supertron wrote:
       | Monodraw is great. I occasionally use it to document system
       | architecture in code comments and project READMEs etc. [0]
       | 
       | Also handy as a quick way to document CSS styles to help
       | visualise which parts of a layout a given style targets [1]
       | 
       | [0]
       | https://gist.github.com/supertr0n/f006a5f61b60160862ec13024e...
       | 
       | [1]
       | https://gist.github.com/supertr0n/462325ec3f7fbea02780039150...
        
       | bayindirh wrote:
       | I use Monodraw since the first day it came out. I use it to draw
       | software architecture, diagrams, and most importantly login
       | banners to the systems I manage personally.
       | 
       | It's a nice, to the point tool.
        
       | constantinum wrote:
       | One of the first few tools I install on a new machine. Absolutely
       | no subscription nonsense.
        
       | sigma5 wrote:
       | how does it compare to excalidraw ?
        
       | ukd1 wrote:
       | I've been using this since 2015 - and just found out today they
       | have a cli tool! But, I bought through the App Store so it's not
       | available for me. For any users, is the cli tool useful?
        
       | methuselah_in wrote:
       | No Linux or windows?
        
         | petepete wrote:
         | No, but Asciiflow is very good.
         | 
         | https://asciiflow.com/
        
           | anthk wrote:
           | try gramscii, and aamath for math formulae.
        
       | adamzerner wrote:
       | Hm. I'm interested in hearing more about the specific scenarios
       | where this sort of tool is useful.
       | 
       | I skimmed through the HN comments and see that it can be used for
       | adding diagrams to code comments. But what else? Slack, Jira,
       | READMEs, SMS, Signal etc all allow you to include pngs.
        
         | ksherlock wrote:
         | You can use it for mocking up a text user interface.
        
         | eichin wrote:
         | What do you mean by READMEs here? Markdown readmes support
         | embedding images from external files, which isn't really useful
         | if you're looking at the readme directly (or do you use data:
         | uris there? Last I looked they had too-severe length limits.)
         | 
         | (I'm also curious what you mean by SMS, or are you conflating
         | it with RCS?)
        
         | abdullahkhalids wrote:
         | Messaging apps don't have fixed width apps, I think. You would
         | need to pick one app's specific font (idk if Monodraw lets you
         | do that), and draw using that.
        
       | thenanyu wrote:
       | I got 20% done prototyping an implementation of this for myself.
       | Gonna just pay the $10. Thank you!
        
       | trusz wrote:
       | I always end back with monodraw. Other apps have too many
       | features and style possibilities that you forget about the
       | content. With monodraw I never get distracted.
       | 
       | However, it still has enough functionality that you can achieve a
       | lot of things. One of my favorites are the anchors. I have even
       | created a small demo/tutorial:
       | https://tamasruss.com/articles/monodraw-anchors
        
         | Semmel wrote:
         | That UML box of a class is really valueable. Great tutorial!
        
       | coffeemug wrote:
       | Amazing tool, thank you for building this. One piece of feedback:
       | let me pay you without having to fill out a 20 field form. I
       | would have happily bought a license through PayPal, but having to
       | enter all the info really makes me want to press the back button.
        
       | guestbest wrote:
       | When I worked in telecom, this is how people used spreadsheets
        
       | easeout wrote:
       | I used this often for diagrams before repository sites' Markdown
       | renderers started to support Mermaid. Nice tool; easy and fast.
       | Can be a bit fiddly to make changes, depending on how much you
       | care about neatness.
        
       | richardw wrote:
       | Love it. Triggers memories!
       | 
       | I wrote my own similar-ish version of this for a school project
       | in 1991. Although mine wasn't mono, so I could draw in foreground
       | colour, preserving the existing text, background colour or text.
       | Eg draw a filled in square made up only of background colour
       | changes. Obviously this is very different but I love the sense of
       | surprisingly good output despite a lot of restrictions.
        
       | fortyseven wrote:
       | I'll never understand willingly restricting yourself to one
       | desktop platform. Especially with a paid app. Oh well. Looks nice
        
         | LoganDark wrote:
         | Sketch, Rogue Amoeba apps, Panic, etc. plenty of Mac-only
         | businesses. They make decent money. As Mac users actually tend
         | to pay for their software rather than expecting everything to
         | be free.
         | 
         | If you released the same software for the same price on
         | Windows, not only would it be more difficult to develop (due to
         | Windows lacking the same abstractions as macOS), you'd probably
         | have way less users, as Windows users don't typically buy apps
         | like this.
        
         | m1keil wrote:
         | I share similar caution with tools and multi-platforms
         | (specifically Mac, Win & Linux). However, the format is
         | interchangeable with other Ascii drawing apps and it isn't too
         | expensive. So I'm totally fine with it.
        
       | nico wrote:
       | Looks amazing
       | 
       | It would be cool if they had an img2asciidiagram that would
       | convert something drawn on paper to an ascii, and that could run
       | from my phone (similar how GeniusScan works)
       | 
       | Then I could just draw on paper, and scan the diagrams from the
       | phone :)
        
       | crooked-v wrote:
       | Monodraw has been invaluable to me for creating UX workflow
       | mockups that sidestep all the bikeshedding by way of having no
       | fine details that people can nitpick.
        
       | felideon wrote:
       | > A picture is worth a thousand words. A diagram is probably
       | worth twice as much.
       | 
       | Or (sometimes) worth ten thousand words:
       | https://onlinelibrary.wiley.com/doi/10.1111/j.1551-6708.1987...
        
       | anigbrowl wrote:
       | ASCII art, so great we built a GUI for it
        
       | tooltechgeek wrote:
       | I get it, but what about mermaid for diagrams? and free
        
       | smusamashah wrote:
       | I maintain a list [1] of main web based text to diagram tools
       | including ascii drawing tools like these. Web alternatives for
       | this are probably https://fsymbols.com/draw/ or
       | https://textik.com/ or https://asciiflow.com/#/ or
       | https://web.archive.org/web/20210503172024/https://fatiherik...
       | or https://app.monosketch.io
       | 
       | [1]: https://xosh.org/text-to-diagram/
        
         | 8ig8 wrote:
         | Pikchar is another to consider for your list. From the creator
         | of SQLite...
         | 
         | https://pikchr.org/home/doc/trunk/doc/userman.md
        
           | smusamashah wrote:
           | It's the second item on the list already.
        
             | lebean wrote:
             | Yes but you only listed it once!
        
           | account-5 wrote:
           | I was introduced to this recently, still digesting it, looks
           | amazing. And no Mac only, and free to boot. Win, win.
        
         | jskherman wrote:
         | Have you also checked out some of the lists on
         | https://fmhy.net? Some there might be of interest.
        
         | peacebeard wrote:
         | Years ago I made a simple one that I still host at
         | https://letterbrush.com
        
         | mbar84 wrote:
         | Perhaps something for your list:
         | 
         | https://mbarkhau.github.io/asciigrid
        
         | nox101 wrote:
         | Thanks for this list. I find all of them are missing features
         | that I would want for diagrams I hand made recently. Of the
         | ones on this list only one seems to handle diagonals (
         | https://textik.com/ ) and that doesn't have a fill function
         | AFAIK
         | 
         | The diagram I wanted to draw would be something like this
         | https://pastebin.com/NPXFS1Fi
         | 
         | I created the box and triangle in textik.com but I had to
         | manually edit a bunch of corners and manually fill it in.
         | 
         | I'm not sure I'd pay for Monodraw. Even though it's only $10 is
         | a native app and Mac only. I do so much on the web and use so
         | many machines and draw diagrams only a few times a year that I
         | think I'd prefer something web based or a VSCode plugin.
        
       | tracker1 wrote:
       | Really wish this was cross platform. Would love to use this in
       | Linux.
       | 
       | I appreciate the effort that it takes to deliver a polished
       | application. I just wish more tooling did better to target Linux,
       | Windows and Mac for desktop apps. Probably a larger driver behind
       | web based apps.
        
         | azeirah wrote:
         | I'm kind of surprised that for desktop applications more people
         | don't use Qt. It's so good for these kinds of applications!
        
       | aramndrt wrote:
       | This reminds me of the old text file format walkthroughs for
       | video games. I fondly remember using the The Legend of Zelda:
       | Wind Waker walkthrough hosted on IGN. Good times. :')
        
       | joehogans wrote:
       | I love monodraw, I buyed it and use it for other developers to
       | show complex functions. You can also ask GPT to render Unicode
       | diagrams and past it in monodraw if you like.
        
       | hit8run wrote:
       | I remember that I bought it through the App Store just to find
       | out that they offered a CLI that is only non App Store. Wrote
       | them a mail and asked if they could change me to non App Store.
       | Never got a reply lol
        
       | stonlyb wrote:
       | Is generative ASCII art a thing? Anything tools similar to
       | Monodraw out there or possible to assist in taking a description
       | and generating an image? Would think even LLM could be trained to
       | think of this as some sort of language.
        
       | stonlyb wrote:
       | Any examples of free body diagrams (from physics) as ASCII art?
        
       | 0898 wrote:
       | Can somebody help me? I've tried Monodraw a few times, but
       | whenever I attempt to use the ASCII on a website (Wordpress, if
       | that's important) the artwork never appears with the correct
       | spacing. The tabs don't show up, or the alignment is off.
       | 
       | So I end up having to create a GIF, which defeats the purpose.
       | 
       | Any ideas?
        
         | joshstrange wrote:
         | Are you putting the monodraw text output into a code block or
         | using a monospaced font?
        
           | 0898 wrote:
           | Which one is the dumb one? Because that's probably the one
           | I'm doing.
        
             | joshstrange wrote:
             | Either of those options should work for you. Code blocks
             | are almost always rendered with monospace fonts and
             | manually setting a normal block of text to a monospaced
             | font will do what you want as well.
             | 
             | The only other issue I can see is if your diagram is too
             | large it might start wrapping which will break the "image"
             | you are going for.
             | 
             | EDIT: See my sibling comment for examples of how to do
             | this.
        
             | joshstrange wrote:
             | Here is an example of me using a code block in Wordpress
             | but setting the max width:
             | 
             | https://cs.joshstrange.com/r3pM1Vzs
             | 
             | Here is how it looks rendered on desktop:
             | 
             | https://cs.joshstrange.com/dvX5qKvf
             | 
             | Here is how it looks on mobile (broken):
             | 
             | https://cs.joshstrange.com/pHNdKLxH
             | 
             | It will work if I set a `style="width: 1200px;"` on the
             | `<pre>` tag (edit as html):
             | 
             | https://cs.joshstrange.com/1zTrXZGM
             | 
             | But then Wordpress is going to complain:
             | 
             | https://cs.joshstrange.com/ctGRh46j
             | 
             | You can always convert the block to HTML so it stop bugging
             | you which will look gross in your editors but work when
             | displayed:
             | 
             | https://cs.joshstrange.com/8FPgPBXp
             | 
             | I hope this helps!
        
               | 0898 wrote:
               | Thanks! This is really helpful - I'll try this out soon.
        
       | pcthrowaway wrote:
       | Is there a markdown flavor that allows for font size changes mid-
       | document? It seems like you'd struggle to embed higher-fidelity
       | diagrams that don't encounter issues with wrapping in markdown
       | unless you can also reduce the font size for some diagrams.
        
       | agarttha wrote:
       | Is there a UTF-16 version?
        
       | inoffensivename wrote:
       | I haven't seen anybody mention JavE (http://www.jave.de/),
       | substantially predates monodraw, but maybe they have different
       | features.
        
       ___________________________________________________________________
       (page generated 2024-03-10 23:01 UTC)