18 ms·
Show HN: Heynote – A dedicated scratchpad for developers
Hey!
I made Heynote entirely for my own use case. For many years, I always had an Emacs instance running with the scratch buffer open, even long after I had abandoned Emacs as my programming editor in favor of more recent IDE:s.
The simplicity of having just one big scratch buffer appeals to me, but I still want to separate the different things I jot down somehow (without using tabs or similar). Previously, my solution was to insert a bunch of blank lines between the notes, but hitting C-A would still select the entire buffer. That's why I came up with the concept of "blocks", which turned out really well for my use cases.
I decided to release Heynote, thinking it might be useful to others.
- praut 3y ago[dead]
- deleted 3y ago[deleted]
- kang 3y ago[flagged]
- Kreliho 3y agoThis looks super nice! I have been using either a plain text file, or telegram's saved messages, or the clipboard history for basically the same purpose, and it never really occured to me that there would be such an elegant solution. Looking forward to trying this out when I get back tonight.
- mkl 3y agoIt seems strange for the website to only give the Apple shortcut keys for a cross-platform app. It gives the actual keys when I run it on Linux, but I can't figure out what "Ctrl + ⌥ + Up/Down" means. Looks quite neat though.
- johntash 3y ago"⌥" is "option" on a mac keyboard, which should usually be the alt key on linux/windows
- mkl 3y agoNot alt here apparently, or super.
- jonatanheyman 3y agoOh good catch. When I added linux support yesterday, I updated the download button, but I forgot to update the Ctrl/Cmd button. Should be fixed now. I'll also fix the "⌥" in the editor. Thanks!
- plonkus 3y agoThis is great! Thank you for creating this. Would love to see unix timestamp conversion in there too
- csmeyer 3y agoI thought this looked pretty cool, and downloaded. Messed around with the demo for a second and hit CMD+s to save my thing somewhere and realized this was actually literally just a simple scratchpad. This will be my daily driver!
- poetril 3y agoThis is awesome! I currently use numpad[0] for this, but would much prefer a local app. I would love to switch but the only thing holding me back is lack of Vim support. Are there any plans to add Vim keymap in the future? 0: https://numpad.io/ https://numpad.io/
- jonatanheyman 3y agoSee https://github.com/heyman/heynote/issues/24 https://github.com/heyman/heynote/issues/24
- zdrummond 3y agoLooks great. Quick question. When I started it up, Little Snitch immediately told me it made a connection to GitHub and currencies.heynote.com. Why does a scratch pad need to phone home?
- giankam 3y agoProbably Github for autoupdate and currencies for current currency rates
- jonatanheyman 3y agoCorrect. For the paranoid it should be simple to fork Heynote and disable currencies and auto updates.
- nightwolf 3y agoThis is fantastic, thank you for making and sharing it? Is there any chance of Heynote supporting Clojure syntax one day?
- johntash 3y agoI was expecting to not like this, but it's actually pretty cool. I love how simple it is and that it's not trying to replace everything. I used to use the scratch buffer in Emacs all the time, and it is something I missed from emacs. I go between using Obsidian and Trillium for notes, but I'm going to try using Heynote for a scratchpad / quick notes type of thing and copy things from it if it's worth saving. Maybe a feature request would be the ability to export a block? I wouldn't want it to be complicated so maybe just something like "Export block to command" and then the command could be a customizable curl command or some other command that copies stdin to another app.
- sigmonsays 3y agoemacs org mode + babel =P
- plutokras 3y agoGreat tool, thanks for sharing. If you are open to suggestions, I would love to have spellcheck in it. https://github.com/languagetool-org/languagetool https://github.com/languagetool-org/languagetool
- smcleod 3y agoI like the execution and minimalist UI. It would be awesome if this was a native or Tauri / Wails app, moving away from Electron would really de-bloat the application and set it apart from say using another VScode extension etc... I already have far too many chrome instances running due to Electron.
- lelanthran 3y agoI like this so much! (Now I want to add blocks in reverse chronological order to my todo app)
- tefloon69 3y agoThis is amazing! One thing I'd love to see though is the ability to zoom in/out like in Sublime
- jameshart 3y agoOn Mac, at least, ⌘ + and ⌘ - seem to change the font size.
- ComputerGuru 3y agoReally cool idea. I ran it on Windows and noticed the text rendering was off (incorrect/missing subpixel anti-aliasing) but at the same time I got distinct Electron vibes which threw me off: Electron does text rendering correctly and lack of subpixel rendering usually means a custom (native) gui. Is everything a canvas? If so, using text gives you accessibility plus better text rendering. But maybe it's just the font. Is there a way to change which font is used?
- nathanh4903 3y agoi immediately tried e^(pi i) and is delightfully surprised that it works! not only the math supports complex numbers, it also allows functions however, something like f(x)= sin(x)/x, f(0) returns NaN. Are there any plans to support derivatives, integration and summation?
- jonatanheyman 3y agoThe Math blocks are powered by Math.js (https://mathjs.org/ https://mathjs.org/).
- japanman185 3y ago[dead]
- rglover 3y agoThis is really, really good. Just earned a permanent spot on my dock in short order. One request (which I would happily pay for): make it so that you can run the code blocks and generate an output. I routinely crack open the browser console to test out some JS and it would be great to be able to do this right alongside my other notes.
- promiseofbeans 3y agoYou might be able to hook into the new Deno jupyter notebook feature for this
- niels_bom 3y agoObsidian can do this: https://github.com/twibiral/obsidian-execute-code https://github.com/twibiral/obsidian-execute-code
- lockyc 3y agohave you tried RunJS? https://runjs.app/ https://runjs.app/
- rglover 3y agoI haven't, thank you for sharing.
- rogeliodh 3y agoawesome... I've always dreamed of a notepad that I could dump any text which includes numbers and it automatically simply made the sum of all the numbers found in the text (also averages) maybe you could add a "Math adder/Math averager" block languages?
- niix 3y agoThis is great! I've been using Caret or Sublime for note taking for years, love this.
- takinola 3y agoSomewhat off topic, I love your website designs. They are simple but look great with a good use of color and space. The copy is also very well done. What do you use to design your websites (Heynote and Locust)? Are you working off a template?
- cassidoo 3y agoThis is cool, it kind of reminds me of stashpad.com too.
- gigel82 3y agoI move between machines a lot and prefer an online tool; I'm self-hosting Trilium Notes https://github.com/zadam/trilium https://github.com/zadam/trilium ; this looks a bit cleaner but without syncing (or server-side storage) it misses a bunch of potential use cases.
- brianzelip 3y agoOff topic but what is the definition of scratch pad? What is it, technically?
- deleted 3y ago[deleted]
- themensch 3y agoThis could be a real boon for shell snippets, I hope you'll consider adding support for them.
- wey-gu 3y agoThis is amazing, I, too will always open notes/logseq/typora/sublime text for such purposes. Heynote is next level.
- WirelessGigabit 3y agoProps for the default install location to be %LOCALAPPDATA% and not %APPADATA% (which ends up being AppData\Roaming...).
- tjbiddle 3y agoAmazing! While I come from a tech background (DevOps) I no longer work in tech (Operate my own companies - completely unrelated). Point being: This still fits my needs perfectly well as a general scratchpad! I usually have dozens of separate text files spread around the place, this should be a good fit to replace. Suggestions: - Make it clear that things are auto-saving - Option to save a block to file - Option to change the background color of alternating blocks; whether that's just allowing two colors - dark and light to alternate - or on an individual basis - Allow titling of blocks and some sort of table of contents - I can see this eventually having dozens that I'd like to reference and quick jump to
- deleted 3y ago[deleted]
- ListenLinda 3y agoI don't think I've ever seen so many positive comments. It must be Christmas. What really amazed me was the Command-Tab icon. My brain registers what it is faster than all the other icons.
- deleted 3y ago[deleted]
- denysonique 3y agoWith the soaring popularity of Electron apps we need Electron to be distributed as a shared runtime.
- namtab00 3y agoso you want something akin to how the .NET Framework was included in Windows... what about different applications requiring different Electron versions?
- denysonique 3y agoIn such rare case, it would download the required version. Having two separate Electron versions is still better than having ten in total, for each app separately.
- namtab00 3y agoI see Electron has a point release approximately every two weeks. Factor in, let's say (conservatively), 5 Electron based applications on a given system. I posit everyone of those will depend on a different Electron version.
- facundo_olano 3y agoI kind of want my Emacs scratchpad to work like this now.
- sohamgovande 3y agoPlease make a non-electron version. This app takes up 400mb in my applications folder on macOS.
- abhijeetpbodas 3y agoI prefer the simplicity of a single `notes.md` for this,always open in vim in a terminal tab. To do the separation, I've a keybinding to insert current timestamp, and but me on a new line: `nnoremap <leader>t :r! date "+\%F \%T"<CR>I#<space><esc>o`
- mderazon 3y agoThis is awesome. Consider fitting in as a browser extension so that when you open a new tab this comes up
- jdprgm 3y agoNice work, I like the simplicity, math blocks, and mixed syntax highlighting. My workflow for the past few years has been within all my sublime projects to have a gitignored folder named scratchpad with mixed files for this exact use case. It's annoying having to create separate tiny files if i want syntax highlighting though for a mixed bag of stuff. I would LOVE this exact app as a sublime plugin on a per project basis that created a .scratchpad file i could gitignore with this same feature set. I haven't ever gone deep on capabilities/limitations of sublime text plugins and if this would even be feasible. I definitely would want this ability for different blocks but on a per project basis or I can see the scrolling easily getting out of hand. This project definitely hits on one of those things just about every dev probably has a slightly different approach to and nobody has really targeted a solution towards so kudos on that.
- 12907835202 3y agoWhy gitignore? Wouldn't you lose all your notes if your computer died or similar?
- AVincentInSpace 3y agoAnd the clouds parted, and the angels sang... Oh my God, where has this program been my entire life? I've been hackily using a Python interpreter to do back of napkin math and trying to keep track of units etc in my head (and making frequent use of the up arrow key when I need to save a result from a previous equation). This program would have been a game changer if I'd discovered it a few months earlier before I finished my university physics course. It probably still will be next semester. I'm sincerely blown away by the automatic unit conversion. Each variable has a unit, and when I divide joules by meters I get newtons. This is fantastic and I cannot believe it is free, much less open source! Do you have a donation link?
- secwang 3y agoIt's perfect. I've been using bbedit's scratchpad for this. This is a perfect alternative.
- ackatz 3y agoReally well done. This will be replacing Sublime Text which I use as a scratch pad. Please add inverted add and syncing to iCloud Drive.
- n_ary 3y agoThis is absolutely fantastic well crafted app that I was looking for. Kudos to you(/u/jonatanheyman). The UX is all around friendly and not 10x bloated feature crapyard. Also thanks for not pumping the whole landing page with 20k emojis, something I honestly truly appreciate. Aside: This may (or not) have issues with hey.com people.
- your_challenger 3y agoThis is awesome. I've downloaded and added by todos to it. But then I remembered, how do I backup my notes and todos? Can you add a feature to back up this to git?
- knlam 3y agoLove this! You just need to add auto evaluate code and done
- nymiro 3y agoOh wow, i do exactly the same but with vim. After leaving vim for a period of flirtation with intellij i settled for vscode, well recently I am leaning towards cursor. But I always have a macvim window handy for notes and snippets. This might be a better suited tool though. Thanks!
- stantham 3y agoHi. Great work! I'll be giving this a try, as I always type my notes on txt files. Any plans on adding support for tabs/multiple files? I usually have different files for different types of notes (todos, project notes, tmp file for random things, etc).
- zero-true 3y agoThis is awesome.... I'm super interested in polyglot file formats like this one. Huge congrats and I will definitely be giving it a try. I've actually been working on my own project to combine Python+SQL+Markdwown+Rich Text into one reactive executable document. If any of you are interested here is a link: https://github.com/Zero-True/zero-true https://github.com/Zero-True/zero-true.
- diimdeep 3y agoGood for you if this is useful to you. But from my point of view this is another low effort slap it together web technology text editor, with emphasis first on a cool name branding - false promises title (coolname.tld), with barely any features and added value on top of stack it is running, almost indistinguishable from next to dozen other so called productivity apps that usually stop being supported few years after launch, and overall almost unnecessary compared to fast, reliable, extendible but hard to make software like Sublime Text that probably outlast most software like this by decades.
- matthewmueller 3y agoThis looks really promising! I just tried it out. A few pieces of feedback! 1. It seems like the save delay is a bit too long. If you reload the page within like 1s of writing, what you just wrote disappears. Maybe make that faster and/or include a confirmation that there's unsaved changes if you try to close so you don't lose changes. 2. I was expecting some of the other languages to evaluate too (specifically JS). Maybe I missed something, but it seems like just the Math blocks are evaluable? Does it work with JS too? Some things I love: 1. Block concept! 2. It's a scratchpad, there's no files to save. I'd love to use this as a dev journal.
- jonatanheyman 3y ago> It seems like the save delay is a bit too long. This is now fixed by making sure the buffer is flushed on reload / exit. Should be released in a beta version in a couple of minutes. Turn on the beta channel in Heynote's settings if you want to update to it right away. 2. Only Match blocks evaluate, and it's likely to stay that way.
- escot 3y agoI’ve always wanted something like this but integrated into the terminal or vim. Like you could have a hotkey that sends a json object from your debug session over to this scratch pad to save for later.
- jon-wood 3y agoIf you’re on macOS: pbpaste >> ~/Scratchfile You can probably hook that up to Alfred or whatever to have a hotkey for it.
- jamespattn 3y agoThis is so delightful. Thanks for creating!
- d4rkp4ttern 3y agoAmazing UX. I'm hopeful something like this can be done to replace the hellish experience of Jupyter notebooks.
- cdmoyer 3y agoI love this. I currently use an app like this. Ctrl-: opens and closes. But it is just one big blob and the Cmd-a thing gets me as well. Looking forward to giving this a go.
- mathfailure 3y agoI don't like software that connects to internet for no good reason. I don't want your app to check for updates, I'll decide if and when I'd like to update it. It also sucks that you haven't provided an option to disable update checks. Since I am on linux and your app is distributed as an .AppImage - the binary gets random name on each run, so I can't set a permanent network rule to forbid it connecting to the internet - instead I get prompted every time. Also, although blocks feature is nice - I still would like to be able to use tabs as well. Also, I'd like to know where that info is getting stored on FileSystem: it is nice that the app saves it on the go, but I still would like to be able to work with the files directly.
- jonatanheyman 3y ago> I don't like software that connects to internet for no good reason. It makes HTTP requests to fetch current exchange rates (for currency conversion) and to check for updates. > I don't want your app to check for updates, I'll decide if and when I'd like to update it. It still requires user interaction to actually apply the update. > I'd like to know where that info is getting stored on FileSystem See https://github.com/heyman/heynote?tab=readme-ov-file#where-is-the-buffer-data-stored https://github.com/heyman/heynote?tab=readme-ov-file#where-i... It shouldn't be hard to fork it and disable currencies and auto updates. However, it sounds like Heynote might not be a good fit for you :).
- neill 3y ago⌘ + N to name the current note, and then a command to search notes by name, would be a great UX boost for a large volume of notes
- deleted 3y ago[deleted]
- llagerlof 3y agoHow does syntax highlight work, or how to activate it for each block? What are the supported languages? edit: now I get it. Suggestion, change the explanation of CTRL+L to "Change syntax highlight language for the current block"
- TaroEld 3y agoThank you, this is very cool. It'll probably replace my current "keep a random vscode/sublime tab" method of notekeeping. Shift+Alt+Down clones the current line, but this is not indicated in the keybinds info. Since the next large version will add the feature to customize the buffer storage path, perhaps it's only a small leap from there to add save/load of different buffer files? I imagine it would already be possible at that point by changing the path and reloading or restarting the program, but a slightly more UX friendly version would be neat.
- enoch2090 3y agoThis is great! Can you also add a preference menu to let users set custom fonts?
- InvOfSmallC 3y agoHey jonatanheyman, how do you render markdown? I tried to use the shortcut ⌥ + Shift + F but it doesn't look works for me.
- jonatanheyman 3y agoI'd love to get some feedback also :). Heynote Github Repo: https://github.com/heyman/heynote https://github.com/heyman/heynote
- danpalmer 3y agoHey! Nice app, I've always had scratch pads around for things like this and never had a particularly good solution for them. Soulver is nice but too maths focused, a tab in VSCode in nice but it's a pain to manage multiple buffers for different languages. I like the feature set here. A few bits of feedback for potential improvements or clarifications... - I couldn't find the shortcut to change the language until I hovered over the status bar element for it. It should have a menu item with the keyboard shortcut on it. - Toggling light/dark mode doesn't live in the status bar in any other app I know, probably best to put it in settings. - Doesn't respect the system light/dark mode, it should by default (but perhaps with an app specific override as some people like that). - Check for update doesn't live in the status bar either in any other app I've used, this could be in settings. - If there's not enough stuff to put in a status bar, maybe drop the status bar? It feels like things have been scraped together to justify having it. - The green branding is ok, but it's quite a strong personality for an app to have. Do you want the app to have a strong personality? (Nothing else about it suggests so). Perhaps consider a more neutral palette that fits in with macOS more, or perhaps several choices for accent colour including a neutral option. - 427MB is huge. Thankfully it's not particularly memory hungry at least with small documents, but damn that's a big bundle for what it is. Why is it bundling ffmpeg? Does it really need GLES? Is a base Electron framework really >300MB? - Options for a keymap, but after deleting the initial content I've lost the actual keymap! Would be great to have a help reference in the app, or at least a docs page on the website that the help menu links to. - Would be great to be able to change the font. - I don't understand the saving model. Where is the data saved? Can I control this? Is saving necessary? If not, how often is the data persisted? Can I put it in cloud storage so it syncs across machines, or if it does this already, can I opt-out of that? - Not personally a fan of putting the name of the app in the icon. Most apps don't, I'd suggest something more subtle.
- perryraskin 3y ago
- maineldc 3y agoI just downloaded and installed and I am really impressed. I liked the concept of math blocks though it took me a few seconds to figure out how to change a new block into a math block. This note at the top wasn't clear to me: ⌘ + L Change block language The phrase block language didn't trigger my "change the type of block" thinking. I might slightly rephrase like: ⌘ + L Change block language (Math, Markdown, etc.) Otherwise, I think this is a great "scratches an itch" type project. Congrats!
- jonatanheyman 3y agoGood suggestion, I'll change that!
- zestyping 3y ago"Change block type" makes more sense then "Change block language". "Language" sounds like it could mean English, French, etc. whereas "block type" is unambiguous.
- silvestrov 3y agoIt would be nice with some documentation of what the Math mode supports, e.g. syntax, units, functions. It can be difficult to figure out why some lines are interpreted ok and while others fail. How to convert between fahrenheit and celsius?
- jonatanheyman 3y agoYes, I've learned that Heynote is lacking some documentation. Will improve that. Math.js (https://mathjs.org/ https://mathjs.org/) powers the Math blocks, so what's supported by Math.js should be supported by Heynote, with the addition of currency conversions (exchange rates are updated daily). > How to convert between fahrenheit and celsius? This should work: 10 celsius to fahrenheit
- silvestrov 3y ago
- AstroJetson 3y agoI was bummed since it uses the entry point DiscardVirtualMemory and for some reason it won't work on Windows 7 (Yea, I'm still using W7 for "Work Reasons")
- skottenborg 3y agoOut of curiosity, what use case can possibly warrant using Windows 7 in 2023?
- AstroJetson 3y agoVery old PLC controllers in a mfg plant. You would be wildly (de)(im)pressed with the amount of equipment that is tied to W7 because of dongles, etc.
- bovermyer 3y agoThe usual reason is business-critical software that only runs on Windows 7. Source: I've worked for multiple companies with very niche software that only works on certain OSes.
- s0l1dsnak3123 3y ago[flagged]
- toppy 3y agoAbsolutely love it! I've been looking for such a tool for a long time. Just a looooong text file when I can write my snippets. I like UI, icon and even the name :) One suggestion - make it collapsable.
- deleted 3y ago[deleted]
- jonatanheyman 3y agoThanks :)! Do you mean that the blocks should be collapsable? If so, blocks should be collapsable by clicking the small arrow to the right of the first line number. For some reason it seems that Markdown blocks aren't collapsable though - I'm going to investigate why.
- rswail 3y agoCool, been looking for new tools to help collect the mess that is my notes. Nice and simple, as a tool like this should be. A few questions after playing for a few minutes: * Where are the notes stored? * Can I delete a block easily? * After creating an additional cursor (great extra feature btw) how do I stop creating them, and/or remove one I've created?
- rswail 3y agoAnswered my own question on the additional cursor, Esc takes you back to a single cursor. Great way to make a list. Start with a number, make your list, then use the additional cursor to add in a checkbox.
- jonatanheyman 3y ago> Where are the notes stored? The whole buffer is stored in a file called buffer.txt located in the user data directory (varies depending on platform, on Mac it's ~/Library/Application Support/Heynote, on Linux ~/.config/Heynote). > Can I delete a block easily? I do that by pressing: C-A Backspace Backspace. > After creating an additional cursor (great extra feature btw) how do I stop creating them, and/or remove one I've created? Pressing ESC (or C-G in Emacs mode) should remove all extra cursors.
- cyberge99 3y agoSo I can use grep and pbcopy to interact with this on the CLI. Too cool! Thank you for a great app.
- jonatanheyman 3y agoThe buffer file has a syntax for the block separators, but it's human readable. Here's what it looks like: ∞∞∞text content of note 1 ∞∞∞text-a note 2 -a denotes that the block language is in autodetect mode and might change ∞∞∞css .some-class { etc...
- duiker101 3y agoDownloading now! I'm already excited! There's a couple of similar apps but they are 99% mac-only. Thanks for making a cross-platform one!
- james-bcn 3y agoI really like the simplicity of it. I'm just not sure if I'd use it.
- jmuguy 3y agoHaven't gotten a chance to try yet but thank you for having an icon that actually looks unique. My dock is filled with purplish blue circles and squares and I have no idea which app any of them are for anymore.
- perryraskin 3y agoKinda crazy that it took this long to get a Note++ equivalent (or similar) for macOS! Until now I've been using Sublime for all my quick dev-related scratch notes. This should make things way way better!!
- hoistbypetard 3y agoDo you mean Notepad++? If so, that strikes me funny, because I've long thought of Notepad++ as a Windows thing that's kind of similar to BBEdit[1], which is a 25 year-old Mac editor. If not, what are you thinking of? [1](https://www.barebones.com/products/bbedit/index.html https://www.barebones.com/products/bbedit/index.html)
- perryraskin 3y agoD'oh, yes, I do mean Notepad++. I haven't used Windows in a while But good point, I totally forgot about BBEdit
- apwell23 3y agoThis is great. I always resort to textedit for this stuff, i am going to use heynote instead and see how it goes. love seeing stuff like this on HN like the good old days. Any plans to add vi keybindings support by any chance?
- deleted 3y ago[deleted]
- cozzyd 3y agoyes, this is cool, but without vi keybindings it's not very practical for me now I wonder if I can get or write a vim plugin to do something similar... that would also have the advantage of being in a terminal so it can live in a persistent tmux session and be accessible remotely...
- alhirzel 3y agoThis is where my mind went too -- currently I use VimWiki for this and it can be pretty nasty. Just a little bit of sugar could go a long way.
- holler 3y ago2nd this, would be great with vi/vim bindings
- jayeshsaita 3y ago[dead]
- cvhashim04 3y agoThis is cool. I was recently looking for something to use for quick notes. This should serve my use case
- zubairq 3y agoWill definitely try this±
- endigma 3y agoAppImage DL leads to the windows .exe
- jonatanheyman 3y agoOh, good catch! Fixed now!
- space_ghost 3y agoNitpicks: * On Linux, clicking the main "Download / Linux AppImage" button results in Windows .exe download instead of an .appimage. Clicking on the down arrow and selecting Linux does work, however. * The opening sentence of the description includes "it's" instead of the more correct "its".
- heresie-dabord 3y ago> "it's" instead of the more correct "its". "It's" = Contraction of "it is" "Its" = possessive (but the origin long ago was also a contraction, that is a grammatical rabbit hole) So "its" here is not just *more correct*, it is *correct*. The use of the contraction here is not *less correct*, it is *incorrect*. --Cheers!
- jonatanheyman 3y agoThe link has been fixed. Thanks! And thanks for the grammar correction - I always keep doing that error (it's instead of its).
- chernoby 3y agoIt would be perfect that you add this on brew because most corporate mac users have no permission to download these type dmg except brew
- jonatanheyman 3y agoInteresting! Do you know of any other Electron apps that can be installed via Brew?
- cyberge99 3y agoI think he’s referring to a managed/corporate provided Mac machine.
- chernoby 3y agoyes absolutely talking about that.
- Otek 3y agoThere are lots of them. You should checkout “brew cask”
- chernoby 3y agoPostman, mattermost, 1Password most of it can be installed by brew and they using electron
- azinman2 3y agoI’ve never not had permissions to download a dmg; I wouldn’t say most Mac developers…
- dmd 3y ago"most"? I'd say that's actually an extremely weird and rare restriction.
- Renevith 3y ago
- michaelrpeskin 3y agoI love this! I typically use a separate text editor for things like this, but the block idea is great and works with how my brain likes to group things. I know this is expanding the scope and complexity and probably opposite to what you're trying to do, but one thing that would be cool is to have different tabs. In my current workflow, I have a notepad for "working memory" which Heynote will easily replace. I also have a separate one to track the things I worked on each day. I need to have a record of who I charged for what incase I get audited. I could totally see having a block for each day - and I wouldn't want that intermingled with the other data. Oh I would love it if you could render markdown as formatted html a la Typora
- jonatanheyman 3y agoYeah, at the moment I'm hesitant to add tab support (for the reasons that you stated), though I've definitely thought about it.
- nicoburns 3y agoPerhaps you could consider documenting/specifying the file format. Seems to me that this could potentially become some kind of standard (if you're open to that). Perhaps with a .mixt extension (for "mixed text")? Seems to me that this would be a pretty good general document format for a lot of use cases.
- pomdtr 3y agoI think tabs could be interesting if coupled with a way to filter the list of blocks (ex: I only want to see math blocks, or only blocks containing the #daily tag, or only blocks from this month). Then each tab would be an opportunity to apply a new set of filter on top of the same document.
- jameshart 3y agoRight - not sure tabs is the right metaphor. I definitely want the ability to keep some blocks around, put them aside, return to them later... Maybe a block 'tagging' mechanism? Let me 'stash' a block and label it with tags... then later on I can 'restore' stashed blocks by searching for tags. Or open a new window easily containing every block that shares a particular tag?
- deleted 3y ago[deleted]
- dustinsterk 3y agoGreat work, I like this a lot. Some feedback: - It would be great to have the options of having tabs so that I could group my notes into a Math specific tab, or raw notes, code, etc. - Another option to the above tabs would be to sort the blocks by type (grouping all the Math at the top for example). - Having the ability to then save each block into a separate file.
- Tarucho 3y agoGreat work! I´ve been looking for something like this for quite a time! C# syntax support would be welcomed.
- who-shot-jr 3y agogreat work!
- dinkleberg 3y agoThis is super cool, nice work! I've just used apple notes for this in the past when on my mac, but this is way nicer.
- reacharavindh 3y agoI use Apple Notes for this. It doesn’t do the calculations, or the syntax highlight. But, it mostly just revives whatever I paste into it, and allows me to copy it to wherever when needed. Including images(screenshots), text with links etc. The side benefit from using Apple Notes is that it is constantly and reliably syncing to my phone. So, I can always refer to stuff on the go.
- maroonblazer 3y agoI've recently started migrating from using Sublime Text to Notes for these scenarios too. I downloaded Heynote and am struggling to understand how/where it's better than either of those apps. Clearly I'm missing something, based on the other comments here.
- injuly 3y agoThis is so neat. Good work! I've tried Obsidian, Notion, Typora, and a myriad of other local editors only to come back to vim every time. My ideal text editor is one that has syntax highlighting, scratchpad, markdown support, block based editing, ability to link between documents and vim keybindings. No cloud login, AI assistant, cross-device sync, or other bloat. I try to avoid using electron apps for lightweight tasks, but Heynote looks like its worth a try.
- rubymamis 3y agoHey there! Maybe you'll like my next note-taking app[1]. It has a block editor based on Qt C++ so it's very performant. It supports Markdown out of the box, will have advanced media support like Kanban, images, columns, etc. [1] https://www.get-plume.com/ https://www.get-plume.com/
- cyberge99 3y agoIf you were an evernote fan, try Upnote as a replacement.
- anhhuy952k10 3y agoFinally I can ditch Sublime text as a scratch pad. This is simpler to use. Good work!
- otterpro 3y agoI just tried it and it runs nicely. I'm sure you get this request all the time, but I'd love to have VIM key binding. I'm still using vim/neovim and I open a "temp.txt" for scratch.
- hajinchung 3y ago[flagged]
- joshstrange 3y agoThis is great and I quite enjoy it. I would love the ability to create multiple cursors from a selection (within a block of course). Intelij (and others) have a hotkey like Ctrl+G to add another cursor at the next instance of a word and Ctrl+Cmd+G to select all instances of a word. That's something I do in IDEA's scratch pads constantly but I'd like an ever-running note of what I'm doing divided into blocks. Also it would be awesome to have some metadata on each block that is toggle-able (or just inserts as text) so I can have the current date/time added or shown.
- jonatanheyman 3y ago> I would love the ability to create multiple cursors from a selection (within a block of course) Ctrl-D (CMD-D on Mac) does this (currently not limited to the current block though, but that is something I'd like to change). > Also it would be awesome to have some metadata on each block that is toggle-able (or just inserts as text) so I can have the current date/time added or shown. Yeah, I've been thinking of adding timestamp (of last edit) as metadata for each block
- rabbits_2002 3y agoI always have a text editor open for notes and snippets like this. This sounds like a perfect replacement. Tabs would be a very nice addition.
- hruzgar 3y agogreat application and something i didnt ask for but needed somehow ;) Sometimes i have to quickly write something down for the reasons you stated. Then i have to open a text editor like Windows Editor or Notepad++. These are nice but they really don't have the feeling to write things down. You have somewhat of an anxiety that you'll lose that data if you forget to save it. Also there is no vim support and stuff like that. So i really liked the idea and would definitely use it if it gets vim support! Also one thing i realized is that the cursor starts at the bottom of 'the note' or whatever i should call it. It would be great too if i got the cursor position where i left it when i closed the app. Also on Windows there is a black bar on the top which should be removable i think looking at obsidian and other js apps. Whatever these are just some small things and im sure they'll get fixed soon. Thank you for the great application and i hope it succeeds!!
- cyberge99 3y agoA few suggestions: On Macos a menubar item would be nice to pop the app up. Also, expanding the Language set to include bash and a few other common languages would be ace. Finally, if you remove the canvas background or set it to the same as the app background color, it will eliminate the white flicker when you resize the app window. If I get time, I may take a look and put in a PR.
- jonatanheyman 3y agoYes, I'd like to add more languages. It's currently limited to what Lezer (https://lezer.codemirror.net/ https://lezer.codemirror.net/) supports . However I just found this repo (https://github.com/withfig/lezer-bash https://github.com/withfig/lezer-bash) which seems to be Lezer grammar for bash, so I can probably use that for bash syntax support. > Finally, if you remove the canvas background or set it to the same as the app background color Will look into that. Thanks! > On Macos a menubar item would be nice to pop the app up Hm, not sure what this means, sorry :)? EDIT: Now I googled "macos menubar" and see what you mean :). I'll look into it!
- f0rmatfunction 3y agoWould love to see support for Swift as well!
- hoistbypetard 3y agoInitial thoughts: 1. It looks beautiful and useful. Very nice work! 2. I love the math sections. 3. I was shocked how large the download was. 4. It's chewing enough memory between the GUI and the (3!) helper processes that I will probably continue to use BBEdit for this kind of thing. I think it will be useful to a lot of people... I like it and could see myself using it sometimes even if it feels too heavy to keep it running all the time.
- jonatanheyman 3y agoYeah, large file sizes and some RAM overhead is a drawback that comes with Electron apps. However, it would never have been possible for me to make Heynote for all of Mac, Windows and Linux, on my spare time and within a reasonable timeframe, without Electron. Also, the CPU usage overhead for Heynote is minimal. It's one of the apps I use the most, and it's never among the programs that have used the most CPU. Yes, 200+ MB of RAM seems quite excessive in theory, but in practice it's less than 1% of the total RAM memory of my laptop (24 GB).
- subtra3t 3y agoI have a total of 4 GB ram on my laptop. Background programs consume about 2 gb and windows around 1.5. Thay leaves me with around 500 MB free.
- albybisy 3y agoa web app (PWA) would be perfect :)
- jonatanheyman 3y agoYeah, I've entertained the thought of adding a web version of Heynote to heynote.com (using local storage for persistence).
- satvikpendem 3y agoYou might consider Flutter for desktop apps next time, as they are compiled to machine code and won't be nearly as heavy as Electron, plus you get automatic mobile and web support.
- vogtb 3y agoThis is rock solid. I keep a plaintext file with all my daily notes in it, but still find myself formatting code before/after dropping it in. The formatting feature alone is a draw here. The math part is great as well - I use a REPL all the time just to do napkin math.
- jonatanheyman 3y ago"napkin math" - I'll steal that for the website. Thanks :)!
- suryo 3y agothis is great and neat
- nip 3y agoThis is excellent Please add a donation button to allow us to thank you for your work
- jonatanheyman 3y agoThanks! Please send that donation to some organization that help people in greater need than me, on my behalf instead :).
- hughw 3y agoI'd love a macOS menubar icon for Heynote. I currently use Evernote's Quick Note feature from its menubar app.
- jonatanheyman 3y agoI'll look into it! Not what you asked for, but slightly related: You can set a global hotkey that shows/hides Heynote.
- hughw 3y agoYes, that might be adequate, thank you. I can't quite put my finger on what I like about the menubar app, but I do click it 30 times a day. Maybe just habit now. The hotkey is very responsive. Nice!
- albybisy 3y agovery good concept! i really would like to have this as a Web-app instead of downloading it...
- jonatanheyman 3y agoI've entertained the thought of adding a web version of Heynote to heynote.com (using local storage for persistence).
- devracca 3y agoThis looks great. I currently use Sublime Text for this. Can easily see using this. Thank you for building it.
- rebeccaskinner 3y agoThis reminds me a lot of org-mode(https://orgmode.org/ https://orgmode.org/). Do you have plans to add other org-like features, like evaluating code blocks? I don't personally see myself moving away from org-mode, but it would be nice to have something to recommend to people who are reluctant to use emacs, even if it's only for a single application.
- jonatanheyman 3y agoOh, I haven't seen orgmode before, so I don't know what its features are. I'm not planning to add evaluation of code blocks (apart from Math blocks that is) due to the complexity it would add.
- beepbooptheory 3y agoThis is so much like org mode (or rather, a small subset of org mode) its fascinating and cool to me you had never even heard of it! Great minds... Make sure to also look at org roam, it is more specifically why I won't personally have a need for Heynote any time soon, but it could maybe be inspiring for you going forward. https://www.orgroam.com/ https://www.orgroam.com/
- bradrn 3y ago> Oh, I haven't seen orgmode before, so I don't know what its features are. Essentially, it’s an environment for writing+outlining+task tracking+time management. It’s incredibly useful — you should definitely try it since you’ve used Emacs.
- versteegen 3y agoJust like emacs itself, it's hard to describe what org-mode is, since it has so many features, most of which any individual probably won't use or even know about. You didn't mention tables, hyperlinks, tagging, exporting documents... See the manual's table of contents: https://orgmode.org/org.html https://orgmode.org/org.html
- turboponyy 3y ago
- erdaniels 3y agoI'd love to share this between computers (cross-platform) like I do my notes via IMAP. Is there an underlying file I can sync with?
- Gracana 3y agoThis is pretty cool. I particularly like the Math block. One issue I noticed while doing a calculation: "belt_pitch = 5/8 in" evaluates to "0.625 in^-1". To get the behavior I expected, I had to add parenthesis around the fraction. Maybe this could be fixed by adjusting precedence rules?
- jonatanheyman 3y agoInteresting. It's Math.js that is powering the Math blocks. I'll have to investigate if it can be configured.
- jameshart 3y agoReally nice execution of a simple but compelling idea. And the presentation on the site is solid too - I get what this is immediately, and I could see how it would be useful to me. A replacement for that Sublime text window I keep around where I paste stuff to keep for later, or to examine some JSON I just grabbed from somewhere! I do find myself wanting more features, but of course the beauty of this is how simple it is, so you definitely need to strongly resist the urge to add and add as people suggest ways to 'improve' it. Apply the old 'every feature starts with -100 points' mindset (attributable to Anders Hjelsberg, I think?). But that said, I'm going to give you some feature requests anyway :D The thing I feel like I most immediately want from a tool like this is something close to the common SQL notebook behavior where you can select a few lines of text and hit F5 to run just the selection. Obviously only makes sense in language blocks which have a script engine associated. But the ability to write a chunk of JS or Python or shell and instantly execute it might be powerful. Where does it run, what happens to the output, etc? All good questions. No idea. I'd love to see markdown blocks get formatted in place (still monospaced, just some bold and italic and stuff) - probably whenever the cursor is not focused in the block... though the potential shift in line wrap that would cause might be annoying. Maybe just have an edit/display toggle on markdown blocks to flip them into formatted mode. Additionally, making markdown-formatted tables elastically align in place while editing them would be a huge quality of life boost.... ... Which (since formatting markdown tables correctly amounts to the same thing) makes me think this could be an opportunity to implement a classic 'elastic tabstops' plain text mode... the fact that the tab key only increases line indent is... an interesting choice that reduces the need to indulge any tabs vs spaces discussions - though obviously it's possible to paste in text that contains tabs even if you can't type them. Coming up with something better to do with inline tabs than just 'snap to next multiple of tab width' is tricky, but I would suggest maybe enabling 'elastic tab' rules: https://nickgravgaard.com/elastic-tabstops/ https://nickgravgaard.com/elastic-tabstops/ - because this is a place that's meant to handle copy/pasted text and stuff natively typed in, NOT a place that is expected to open and correctly format files.
- jonatanheyman 3y ago> I do find myself wanting more features, but of course the beauty of this is how simple it is, so you definitely need to strongly resist the urge to add and add as people suggest ways to 'improve' it. Definitely! I'm happy that you preface the feature requests with this comment :). I've thought about the possibility of some kind of evaluation of code blocks, but at the moment I'm not planning to add it. Mainly because of the questions you posed :). Heynote currently gets most of its Markdown features (basically everything except the checkboxes) "for free" from CodeMirror's Markdown mode (https://github.com/codemirror/lang-markdown https://github.com/codemirror/lang-markdown). Regarding tab size, I realize that it's something that I'm going to have to add settings for. Up until now, me and a few friends have been the only users of Heynote, and it seems like none of us favors tabs before spaces (or at least no one has asked me to fix it).
- porridgeraisin 3y agoLove this. This is exactly what I need. I have been using a WhatsApp group with just me, for this purpose, until now. Feature requests: - arch package - would really like the results of the math to be in buffer.txt and in Ctrl+a and copy. - changing font and color theme(I like the Nord one right now though!) Please keep it minimally colored as it is now so that changing color is just a simple matter of configuring a handful of colors as opposed to custom css. That would make it too complicated. - support for images and media in markdown blocks would be nice to whatever extent possible. I would love it if you could copy the way vscode markdown works. Ctrl+v an image in the editor and it inserts the markdown for it and saves the image to a file. Markdown preview would be nice but I understand if you think that's out of scope. - timestamp for blocks. especially would be nice if you could store createdAt updatedAt in the line with the infinity symbols in buffer.txt to make it easily extractable using grep and cut. - saw that you mentioned downthread that you're working on reloading the file so that we can back it up with git or whatever. Would love that! - is mobile possible? Through Cordova or something Thanks for making this!
- silvestrov 3y agoFont and color could be implemented by letting us add some CSS to the html page (as it is made using Electron). This would enable using fancy CSS for some notes.
- porridgeraisin 3y agoAdding to it: Saw you mentioned below that you were planning to add a pwa + local storage version. In that case you can disregard my mobile request, and replace it with a download button on mobile so we can sync it to our desktop through git or drive or something.
- jonatanheyman 3y ago> would really like the results of the math to be in buffer.txt and in Ctrl+a and copy. Adding the results to lines that are copied from Math blocks should be doable, and I like that idea! I agree that it would also be nice with the results in buffer.txt, but because of implementation details it's harder to implement I think. > changing font and color theme At the moment, I'm leaning towards keeping the number of configurable settings down and not add have font color theme settings. > timestamp for blocks. especially would be nice if you could store createdAt updatedAt in the line with the infinity symbols in buffer.txt to make it easily extractable using grep and cut. yes, this is on the TODO > saw that you mentioned downthread that you're working on reloading the file so that we can back it up with git or whatever. Would love that! Yes, this too :) > is mobile possible? Through Cordova or something Probably not :/
- bityard 3y agoThis looks fantastic. I will definitely give it a spin. I've been tracking what I call "computational scratchpad" apps for a while now but haven't found one that fits my environment/workflow yet. Maybe Heynote will. Here are some others that I've looked at: * https://soulver.app https://soulver.app Granddad of them all, Mac-only, proprietary, expensive * https://numi.app https://numi.app Mac-only, proprietary, semi-expensive. Has a Github and claims to be MIT-licensed but I don't see how you could build a working application with what's in the repo. * https://calca.io https://calca.io Windows- and Mac-only, proprietary, not expensive, nice docs. * https://notepadcalculator.com https://notepadcalculator.com Web-based, not open source, hosted but uses local storage. You can optionally create an account to sign in and have your notes saved in plaintext on his server. * https://github.com/bbodi/notecalc3 https://github.com/bbodi/notecalc3 Web-based, open source, self-hostable. But it seems to save your document in the URL string itself, which means the URL gets updated with almost every keystroke. Worth it for quick calculations and very small notes, I guess. * https://numpad.io https://numpad.io Web-based, hosted, not open source. Also stores entire doc in URL, but doesn't update the URL bar the whole time you're typing. * https://numbr.dev/ https://numbr.dev/ Web-based, hosted. Has a Github but is not open source and the repo does not have all the bits needed to self-host it. Stores entire doc in URL. * https://github.com/metakirby5/codi.vim https://github.com/metakirby5/codi.vim Vim/NeoVim plugin that is less like a "smart notepad" and more like Jupyter but with results printed on the right side of the screen instead of in a cell below. Supports lots of programming languages.
- jonatanheyman 3y agoHere's another web-based one: https://www.turo.io/ https://www.turo.io/
- antiframe 3y agoI would consider Emacs to be the granddad of "computational scratchpads". Being able to run a repl in a buffer, tangle code blocks in org-mode, create buffers against which to run code, etc. Plus the calculator is fire.
- deleted 3y ago[deleted]
- hn_throwaway_99 3y agoCongrats! I really like this. I use Boop on Mac now for my "scratchpad", but the separate blocks here is really ideal for me - the one thing that was a problem for me with Boop is that it was a single buffer and all the helpful commands (not solely stuff like formatting but helpful things like "decode JWT) ran against the whole buffer. Great work!
- josephcsible 3y ago[flagged]
- qainsights 3y agoGreat utility. I rely on Sublime to quickly jot down my thoughts. I will use Heynote going forward. A few suggestions: 1. Can we create multiple tabs with split view? 2. Display stats like word, character count in the status bar. 3. Export options for the notes. Thanks
- kposehn 3y ago...I wish this was on iPad too! Very cool to see and I'll try it on Mac.
- AbraKdabra 3y agoI absolutely fucking love this concept, this is basically my Sublime Text but with steroids, everyone using Notion, Obsidian and such apps and here I am with a +10000 lines of plain text where I dump everything and I am more than happy, and this concept only makes it better, it's how I prefer to organize myself but now I can make blocks of it and format it, I love it, really. This blocks thing reminds me of Toad for SQL which I used extensively years ago, where you could execute queries based on the position of the cursor, great feature. Any plans to change font and such things? Any general roadmap?
- jonatanheyman 3y agoI'm happy you like it :). There's a roadmap in my head and some tickets in my private Trello, but I should probably create Github issues for those. There are a couple of main things that I want to add (file syncing support, timestamp metadata to blocks) and some general improvements. However I want to keep its simplicity, and I currently see Heynote as kind of complete when it comes to new concepts. Currently, I don't think I'm going to add tabs, and I'm not planning to make it into a "real" editor by adding the ability to open and save files.
- rfreedman 3y agoLooks great - I've been using markdown files and a markdown editor for my dev notes. But I tend to create a file per week, with notes about what I have to do / have done, etc. by day within the weekly file. Having one big file for a project that lasts months (or years) would be unworkable. I'd like to see the ability to create and open whatever files I want, rather than just saving a single pre-determined file. Good job, though - thanks!
- perryh2 3y agoI'll try this out! I use a Slack DM with myself to persist scratch notes. The main benefit of this is that I'd easily be able to view notes on my phone and other computers.
- jsdalton 3y agoThis is just outstanding. It's so exactly what I wish for out of a scratch pad. My feature request to add to your pile (possibly a lonely one, since maybe it's just unique to how my brain works): I really want a scratch pad like this to have UX that supports "inverted" order. Meaning, new blocks get added to the top of the page instead of the bottom. The blocks naturally flow in descending order of creation rather than ascending. The scratch pad always opens at the top of the page. Over time, blocks thus end up "decaying" toward the bottom, with the most relevant at the top. It just fits better with how my brain works. I also +1 the sentiment given elsewhere in this thread to bias toward ignoring the vast majority of these feature requests and preserve the simplicitly of what you've built. That includes mine!
- chatmasta 3y agoI also like this. But I don't like the distraction of seeing all the blocks below my cursor move every time I make a new line. The perfect UX would be to add a new buffer at the top, but with enough padding to fill the window so that you can't see the movement of previous blocks while you're typing. (Maybe this is already kinda how it works - I haven't downloaded the app yet, but I'm excited to try it, because it looks great!)
- radley 3y ago>I don't like the distraction of seeing all the blocks below my cursor move every time I make a new line. Uhm... They don't move. They stay the same distance, relative to your line. As you add more lines, they'll disappear below the fold.
- chatmasta 3y agoIn a regular doc, if you start typing at the beginning, then all the lines after it move down as you type. It's just the movement I find distracting, compared to appending to a doc with no space below where I'm inserting text. I'd rather feel like I'm typing into empty space rather than up against a wall.
- 3y ago
- karmakaze 3y agoNice! Is the single buffer feature, non-negotiable? I've found myself using Sublime Text in a similar manner (because it's crash-proof without saving to a named file). I do use multiple buffers though (often ending up with too many and culling them like I do browser tabs).
- pottertheotter 3y agoI do the exact same thing. It's very handy that I don't have to save anything. I even use it for putting together longer prompts for ChatGPT.
- jelder 3y agoThe Slack use case highlighted on the front page would be better if Slack markup was an available syntax. Slack is not really Markdown, so composing messages in Heynote won't have high fidelity. One thing that often trips me up is that links and code formatting cannot coexist: [`method_name`](https://github.com/example/example/blob/main/src/foo.rs) Would be rendered by most Markdown engines as a link with fixed-width text. Do the same thing in Slack and text will be fixed-width, but won't be a link. There's a partial summary of the differences here: https://www.markdownguide.org/tools/slack/ https://www.markdownguide.org/tools/slack/
- j1elo 3y agoNot only that. It seems that with all the millions they have, Slack devs were unable to implement the most basic bracket balancing in the link parser. Try to send a link with a title including square brackets, and contemplate the disaster that gets interpreted from it: [Unmarshal(data []byte, v any)](https://github.com/golang/go/blob/go1.21.0/src/encoding/json/decode.go#L97) (spoiler: it just thinks that the link title is "Unmarshal(data [" and somehow inserts links into the rest of the words.)
- divbzero 3y agoI agree with the use case, but also wonder if it’s more on Slack, Jira, etc., to try harder to adopt Markdown.
- koiueo 3y agoThis looks great. And after reading the description I immediately thought of emacs. Only then I read this post. Have you tried emacs org-mode with code blocks? One can even execute them. (I never tried myself) Have you considered any other emacs-based options?
- deleted 3y ago[deleted]
- sneak 3y agoNote that this is not open source software. It has a nonfree license.
- divbzero 3y ago“Math” mode apparently depends on Math.js: https://mathjs.org https://mathjs.org So it should support the syntax available in this Math Notepad: https://mathnotepad.com https://mathnotepad.com
- fastball 3y agoCool app! Reminds me of Quiver[1], which is the note-taking app I used throughout my college degree with varying amounts of success. It is also in part what inspired me to build my own note-taking app, as it opened me up to the idea that there are still a lot of unexplored modalities in the note-taking / knowledge-management space. [1] https://yliansoft.com/ https://yliansoft.com/
- evnc 3y agoI love this! Simple and solid execution. I've been wanting to build something similar for some time now, might fork and play around with it. Thank you for open sourcing it! I've started using Obsidian with a new note for each day and separating "blocks" with a Markdown horizontal rule (`---`) to achieve something similar, but this is much cleaner. The strength of such an approach is making capture extremely easy -- new block, start writing, no thinking about where this goes and how to fit it into pre-existing structure. I find that if I'm trying to do that, then by the time I find where my idea goes, I've lost the idea. The downside, of course, is finding things again. The ability to tag or title a block and search by tag or title would be great. More ambitiously, it would be cool to experiment with incorporating LLMs and embeddings to automatically tag, summarize, categorize, cluster etc. your blocks. There's a lot of different directions one could take this, but I'll echo the sentiment of others to refrain from adding too many features and losing the original appeal of simplicity. :) Also: How do you handle performance when the buffer gets very large?
- mkl 3y agoIt's not open source, as it uses the Commons Clause which severely limits what can be done with it (the name is misleading).
- prartichoke 3y agoAs far as a quick google search got me, it seems pretty open with the only caveat being you can't sell or monetize it... how is that not open source?
- aryonoco 3y agoIf you put any restrictions on usage or what can be done with it (like selling), then it's absolutely not open source. open source doesn't mean source code is there. open source has a specific definition. There is a list of acceptable open source licenses, as defined by OSI. similarly there is a list of acceptable free software licenses, as defined by FSF. Broadly, the two lists are the same. Commons Clause is definitely not open source.
- shafyy 3y agoAmazing, and congrats on building it! Any plans on supporting Ruby syntax?
- dceddia 3y agoThis looks awesome! I love the blocks idea. I’m gonna download and give it a try. I see lots of comments about Electron (per usual here haha) and I just thought I’d shout out Tauri if you hadn’t run across it. It’s basically Electron-but-in-Rust and uses the system webview instead of Chromium, so bundle size and memory usage is reduced a bunch. I took a look at the code and it looks like you haven’t got a ton of Electron-side code so if you felt like playing with Rust it might not be too hard to swap. I have a video editing app that I started building with Electron and then switched to Tauri midway and it’s been pretty nice. I hope it’s clear this isn’t a request and please feel free to disregard this comment entirely :)
- OccamsMirror 3y agoMy issue with Tauri is that it used WebKitGtk2 on Linux. Which is pretty poor from a performance perspective and missing feature support compared to WebKit on MacOS or Webview2 on Windows.
- esafak 3y agoI read that the Rust part was unergonomic. Do you find Tauri productive?
- dceddia 3y agoYeah, it works pretty well for me. Rust definitely took some getting used to (I was new to it when I started). There's a lot of functionality you can access from JS without needing to get into Rust, but on the Rust side Tauri has this notion of "commands" for calling Rust from the UI. You can write a Rust function and annotate it with #[tauri::command], and register it, and then you can call it from the JS side with invoke('your_command_name', args). Those commands can be async too, so you can do blocking work on the Rust side and the UI won't freeze. You can inject State variables into those commands, which get injected at call time and are effectively global to the Rust side. I would say the State stuff is a bit unergonomic in that you run up against needing to share them between threads, so everything inside them needs to be Arc<Mutex<>> and writing those wrappers was boilerplatey. I wish the JS <-> Rust calling overhead were lower. It serializes everything to JSON and back, so I try to avoid too many calls, and try to avoid sending lots of data between them.
- 05bmckay 3y agoHahaha, had this same idea a little while back, really cool stuff: https://lol-dusky.vercel.app/ https://lol-dusky.vercel.app/
- Daegalus 3y agoWanted to ask if it was cool with you if I created a Flatpak repo for Flathub for this? That was it can be distributed with Flatpak.
- Rudism 3y agoI love the idea of this after playing with it for a few minutes. My main gripe is that the font size is way too small for my old-man eyes, and it doesn't seem to remember or restore the previous zoom-level when launching (meaning I need to re-zoom-in every time). If it were possible to set a larger font-size or if the previous zoom level was saved and restored on each launch that would be a greatly welcome addition to what seems like a super useful tool.
- rkeene2 3y agoIt's not just the font size but also the choice of font, with no way to specify a font that is readable.
- jonatanheyman 3y agoRestoring the zoom level on restart is a good idea. Thanks for the suggestion!
- nateb2022 3y agoYou can zoom in with [Ctrl][Shift][+], and zoom out by [Ctrl][-].
- WillAdams 3y agoI _really_ like it --- have you thought about a more abstract icon? Agree w/ folks elsethread that just removing the text would be a huge improvement --- perhaps have an option for displaying total number of blocks and collapsed blocks? Where are the currency conversion ratios pulled from? I guess that requires 'net access? Possible to add a right-click menu (say to collapse blocks and so forth)? There seems to only be one fold point for a given block? (The markdown one for instance) --- it would be nice if the first and second line were always possible collapse/folding points. Perhaps menu commands for collapse all/show all?
- apsurd 3y agoThe webpage is great. loads INSTANTLY. So noticeably fast that I checked the source. Looks more or less hand-done. Just want to give a nod and say thanks for the craft and care. & +1 I downloaded the scratchpad. Looks useful.
- totalhack 3y agoI use org mode which was great in emacs but the plugin kinda sucks for VS code. The main feature there is the ability to fold and nest sections. I see you have a "blocks" concept which seems roughly equivalent to a top level foldable bullet in org mode. Are blocks nestable? Otherwise what is the recommended way to organize a multi-block set of notes? Typical example for me might be tackling a larger problem/feature (top level block) and then having sub blocks/bullets for each part of the problem which are also foldable. I usually don't go more than a few levels deep but could get by with just 2 if need be.
- xenodium 3y agoHey congrats, this looks great for macOS! Trying it now! With a similar mindset and an Emacs background, I wanted a scratch-like experience on iOS, so I built one https://xenodium.com/scratch-a-minimal-scratch-area https://xenodium.com/scratch-a-minimal-scratch-area. Seems to work for others too https://irreal.org/blog/?p=11202 https://irreal.org/blog/?p=11202 While there's a new built-in iOS journaling app, I'm building one to save to plain text (and no lock-in). https://xenodium.com/an-ios-journaling-app-powered-by-org-plain-text https://xenodium.com/an-ios-journaling-app-powered-by-org-pl...
- lienz 3y agoVery nice. Although nowadays I just Signal's note to self.
- bbx 3y agoVery interesting! A few years ago I imagined something similar, with the added ability to move blocks between adjacent windows: https://twitter.com/jgthms/status/1225513837379641350 https://twitter.com/jgthms/status/1225513837379641350
- promiseofbeans 3y agoI saw the unit conversions and it immediately reminded me of Fend (https://github.com/printfn/fend https://github.com/printfn/fend). If you're looking to expand on your maths / unit conversion feature, it could be a good option. It also supports forum-style since rolling (e.g. 3d6+4), which some people could find pretty useful
- prakashn27 3y agoLooks cool. Vim would be a great addition.
- gnatolf 3y agoI've always used multiple tabbed unsaved files in notepad++ to do the same. Funny how things converge, this is very similar.
- prakashn27 3y agolooks cool. Vim would be a great addition.
- rg2004 3y agoThe idea of Pages/Tabs would be useful to me. I'm a bit of a scratch-pad hoarder. I currently have 200+ notepad++ documents open.
- AlphaWeaver 3y agoThe calculations alongside the notes remind me of the "dynamic annotations" in Ink and Switch's "Potluck" [0] demo. I wish there were more examples of this in note taking applications - this sort of progressive enhancement from unstructured notes to structured data is useful. [0]: https://www.inkandswitch.com/potluck/ https://www.inkandswitch.com/potluck/
- smithza 3y agoemacs org mode… anything else needed?
- swah 3y agoNice but..I expected a run command on my Javascript block.
- computershit 3y agoSeriously, nice work. If you are going to eventually offer a web version of it it would be great to be able to self-host.
- delijati 3y agoI currently have a insane long Markdown file as brain dump. Will give it a shot. Something like an overview or minimap or a way to structure like mindmap would be nice :)
- promiseofbeans 3y agoOnce browser support improves, minimaps on web-powered stuff will be pretty trivial: https://developer.mozilla.org/en-US/docs/Web/CSS/element https://developer.mozilla.org/en-US/docs/Web/CSS/element
- mike31fr 3y agoUnits handling in maths blocks is awesome. Exemple 1: g = 9.81 m/s^2 time = 60s Then "g*time" shows "588.6 m / s" Exemple 2: energy = 14 J distance = 5m "energy/distance" shows "2.8 N" Wow. EDIT: I just found out that behind the scenes it's using maths.js. This library does this natively. Input "14J/5m" into maths.js and you get "2.8 N" as output. Glad I discovered this library.
- arjonagelhout 3y agoI’ve been using iA Writer for this exact purpose. A place to quickly dump text I don’t want to lose or quickly create drafts I don’t want to accidentally send. I’m not sure whether blocks would be better than just separate files, which can be created quickly using Cmd+N. However, the lack of syntax highlighting in iA writer has been less than ideal, so I’m definitely trying this out!
- arjonagelhout 3y agoFirst impressions: - resizing the window creates white borders when the content of the window hasn’t been updated yet to reflect the new window size. these are a bit jarring / look non-native. - I try to keep electron apps to a minimum, as I’ve had only bad experiences with them so far (Discord, Warp, Unity Hub) and they take up a lot of resources. - While writing code, it does not keep indentation when entering a closing bracket. These are more nitpicks, but I love the concept :) Great work!
- threaz 3y agoGreat app. Thanks for making it available. Is there an option to rearrange blocks using drag-and-drop or a keyboard shortcut?
- swyx 3y agoah a fellow electron app publisher! qq - have you figured out automatic updates yet? i tried to do that in my app (https://github.com/smol-ai/GodMode https://github.com/smol-ai/GodMode) but everyone just complains about a blank white screen whenever i push an update, if they even receive it at all. feels very flimsy. what do uou recommend for update push best practice?
- Octokat 3y agoThank you jonatanheyman. This is absolutely brilliant and I see myself using this daily.
- ninjachen 3y agoI love this concept, blocks with different language is great! Can drop my sublime plain text now
- ninjachen 3y agocan we save the content into different files? Then I can split my lines into different subject
- coldtrait 3y agoThis is really cool and I see myself using this a lot. I tried it out but one thing doesn't seem to work now I was able to toggle language using `⌥ + Shift + F` once before, but that does not seem to be working anymore.
- bomewish 3y agoI would probably pay for this if: - vi bindings - show me where the file is so I can move it around, sync it across machines, back it up, etc. - the inverse order stuff It's really really good. thank you.