A scriptable scratchpad for developers. In slow yet steady progress.
If you got Boop on the Mac App Store, you can update it there as well.
Peeps,
First of all, how have you been? I myself have been alright. Time is weird, eh? One minute, it’s October. The next minute, it’s still October, but also a year later. And so here we are, much later than expected, reunited again to chat about a new Boop update. And what an update it is.
The kind folks over at Accidental Tech Podcast chatted about Boop, giving it a very nice review. One of their listeners said Boop is “like paper plates but for JSON” and I cannot overstate how much I love that. You can listen to it here: https://atp.fm/437 starting at 1:06:50
Now, this new version finally brings some very much needed upgrades: First off, a new icon that won’t look totally wonky alongside other Big Sur icons. It is an iteration of a new icon designed by @mmshivesh, and it makes quite a bit of a difference in the ol’ dock.
I bet what sticks out is my number of unread messages.
I’ve also spent some time refreshing the overall user interface, to make it more in line with other Big Sur/Monterey applications. The picker has a new look, the editor got a more refined color scheme, and it overall just feels a lot better. Plus, it's now a universal app. Yay!
Anyway, here's what's new:
New Scripts:
I wish you a lot of great spooks, stay safe and healthy out there!
Ivan_
Full Changelog: https://github.com/IvanMathy/Boop/compare/1.3.0...1.4.0
If you got Boop on the Mac App Store, you can update it there as well.
Friends,
I hope this release finds you well. Taking care of yourself is important. I've been doing a bit of that lately (hence the delay between releases), but I've also been taking care of Boop. And boy, what a release it is!
Version 1.3.0 brings some big, big, big performance improvements. As in, 99.7% faster editing according to some of my tests, potentially even more on very big documents. Plus, we've got 11 new scripts like SHA hashing and oNe tHaT MAKE YouR tEXt loOk LIkE thAt oooOoOoOOOH.
The syntax highlighting should be a lot, lot faster now, thanks to a fairly big overhaul of how it works under the hood. What's cool with this update is that it also handles tricky situations like this (look at lines 4, 10, and 12):
a lot better:
The speed improvements are clearly noticeable. If you take a look at my notes from when I started working on the issue, you'll see that there was a drastic change in processing time when dealing with significant amounts of data:
And here are some actual benchmarks between 1.2.1 and 1.3.0 with a huge JSON file:
I wrote a giant post-mortem of the why and how this happened, but all things considered I don't think anyone wants to hear me ramble about some obscure part of computer science. So the cliff notes version is: Regexes were too complex, so I changed the way they work by taking inspiration from Prism. This allowed more accurate results with smaller expressions. Also, ditching Swift's String for NSString gave like a 30% performance bump.
Anyway, here are all the changes in this release:
And 11 new scripts:
It took a lot of effort to put this update together, so thank you so much to all the contributors, bug reporters, and users! Next time, we'll tackle some Big Sur updates and a few more things.
That's pretty much it for me, thanks for listening and have a fantastic rest of your week!
If you got Boop on the Mac App Store, you can update it there as well.
Howdy! Here's a quick update to fix a few issues. It contains the same changes as 1.2.0 plus the following fixes:
Here's a comparison of the current version (top) and the previous, broken behavior (bottom) while typing some French:
As you can see, the original characters were left in after the substitution. This should hopefully also fix languages such as Japanese and Chinese.
Anyway, version 1.3.0 is well underway and has some very, very exciting stuff. See y'all soon!
If you got Boop on the Mac App Store, you can update it there as well.
Friends, I hope you're all doing well. Today's Boop update is pretty exciting, and I hope you'll like it!
Feeling lazy? I made a trailer and animated explanations of what's new on Twitter. Otherwise, the full changelog is below.
First of all, we have 19 new scripts, including some absolute bangers like CSS formatting, JSON Minifying, line sorting, and eval Javascripting. Plus, they're now loaded only when you need it so Boop does more with a smaller memory footprint.
Second of all, we have the new modules support system. This lets you bring external dependencies into your scripts with minimal changes and share code between scripts, kinda like that:
const { encode } = require('@boop/base64')
let something = encode('hello')
Boop ships with a couple modules, and you can add in your own. It's overall pretty awesome, and you should read the documentation to better understand how it works. Here's an example where I use lodash to power several scripts based on the same functions:
Third of all, we have a new insert()
function that lets you insert text at the cursor's location. It's pretty neat.
Fourth of all, we now have script debugging. Kinda. You'll need to make your own debug build of Boop, and it's all explained in the documentation so make sure to read it carefully. It's also super cool and very useful when debugging modules.
Last of all, there is a bunch of bug fixes and small enhancements, which can all be found right below.
insert()
function, allowing scripts to insert text where the cursor is.Thanks for reading til the end! Next time, I should be done with the performance upgrades. In the meantime remember to be kind to others and to take care of yourself.
If you got Boop on the Mac App Store, you can update it there as well.
Well, dang. Before we get to the release notes, I’d like to say thank you for the overwhelming response to Boop.
I have been working on this app for over two years now, and decided to release it because a couple of friends liked it a lot. I did not imagine it would get so much love from the internet. Between the fantastic PRs submitted, the awesome feature requests, and being featured on the Mac App Store’s “Apps and Game We Love Right Now” list, it’s been quite a thrilling ride.
So once again, thank you for using, contributing to, and/or spreading the word about Boop. It means a lot to me and this is what keeps me going. I hope you'll like this update!
If you're not a fan of reading release notes, here's a trailer for it.
New features:
Bug Fixes:
Next update, I’ll tackle performance issues, and upgrade the scripting engine to be even more powerful. See you then!
Ivan_
(PS: In the meantime, you can follow me on Twitter)
Initial release. Yay!
Also available on the Mac App Store.