The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Partially encrypt a file based on its HEREDOCs
Hi HN!<p>I wrote a tool that partially encrypts files based on the presence of a HEREDOC.<p>Check it out:
https://github.com/higgins/privatize<p>When added to a git repo, it will automatically transparently encrypt/decrypt files you want privatized.<p>For example if you configured your repo to privatize the file `example.txt`, you could write:<p><pre><code> ```
Today I a burrito.
<<PRIVATE
I was on the toilet for hours.
PRIVATE
I got a lot of reading done.
```
</code></pre>
but when git-commit'ed would become:<p><pre><code> ```
Today I a burrito.
<<PRIVATE
xuJ0fld2vmNWaVLogTIufmWsiFso
PRIVATE
I got a lot of reading done.
```
</code></pre>
Diffing works as you expect (on the unencrypted source) and only those with the `privatize` symmetric key would be able to unlock and decrypt these files.<p>Why did I do this?<p>I keep a public log of what I plan to accomplish and what I'm working on both personally/professionally.
At the end of the day, I write a summary of everything that happened.
Naturally, there are some details of my life that should be kept private (details of too-be-launched projects, sensitive family events, etc).<p>It's helpful for me to track everything in one file so as to keep the day's context together.<p>Would love to know what you think!
Justin
Show HN: Partially encrypt a file based on its HEREDOCs
Hi HN!<p>I wrote a tool that partially encrypts files based on the presence of a HEREDOC.<p>Check it out:
https://github.com/higgins/privatize<p>When added to a git repo, it will automatically transparently encrypt/decrypt files you want privatized.<p>For example if you configured your repo to privatize the file `example.txt`, you could write:<p><pre><code> ```
Today I a burrito.
<<PRIVATE
I was on the toilet for hours.
PRIVATE
I got a lot of reading done.
```
</code></pre>
but when git-commit'ed would become:<p><pre><code> ```
Today I a burrito.
<<PRIVATE
xuJ0fld2vmNWaVLogTIufmWsiFso
PRIVATE
I got a lot of reading done.
```
</code></pre>
Diffing works as you expect (on the unencrypted source) and only those with the `privatize` symmetric key would be able to unlock and decrypt these files.<p>Why did I do this?<p>I keep a public log of what I plan to accomplish and what I'm working on both personally/professionally.
At the end of the day, I write a summary of everything that happened.
Naturally, there are some details of my life that should be kept private (details of too-be-launched projects, sensitive family events, etc).<p>It's helpful for me to track everything in one file so as to keep the day's context together.<p>Would love to know what you think!
Justin
Show HN: download all your [Liked] videos from TikTok for safekeeping
This is a chrome extension I made. You visit tiktok.com and sign in, the extension retrieves MP4s and puts them in a folder.<p>My goal: the TikTok algorithm has helped me find wonderful things. I consider the list of my [Likes] to be a treasure collection, and want to make sure I don't lose them.<p>If you don't have time to try, here's a video walking through all the features: <a href="https://youtu.be/BoHOdRxHgP0" rel="nofollow">https://youtu.be/BoHOdRxHgP0</a><p>Is it free: Yes. (I did test a payment modal once, but users gave me 1-star ratings for it, so I removed it)
Show HN: download all your [Liked] videos from TikTok for safekeeping
This is a chrome extension I made. You visit tiktok.com and sign in, the extension retrieves MP4s and puts them in a folder.<p>My goal: the TikTok algorithm has helped me find wonderful things. I consider the list of my [Likes] to be a treasure collection, and want to make sure I don't lose them.<p>If you don't have time to try, here's a video walking through all the features: <a href="https://youtu.be/BoHOdRxHgP0" rel="nofollow">https://youtu.be/BoHOdRxHgP0</a><p>Is it free: Yes. (I did test a payment modal once, but users gave me 1-star ratings for it, so I removed it)
Show HN: download all your [Liked] videos from TikTok for safekeeping
This is a chrome extension I made. You visit tiktok.com and sign in, the extension retrieves MP4s and puts them in a folder.<p>My goal: the TikTok algorithm has helped me find wonderful things. I consider the list of my [Likes] to be a treasure collection, and want to make sure I don't lose them.<p>If you don't have time to try, here's a video walking through all the features: <a href="https://youtu.be/BoHOdRxHgP0" rel="nofollow">https://youtu.be/BoHOdRxHgP0</a><p>Is it free: Yes. (I did test a payment modal once, but users gave me 1-star ratings for it, so I removed it)
Show HN: npm install actual-malware
Our package registry ecosystem has a serious problem... and not just npm.<p>People are aware of this but maybe this will make them a bit more aware
Show HN: Zipy.ai – Live web debugging with error monitoring and session replay
Hey HN commmunity, Karthik here! Super stoked to announce the launch of Zipy today.<p>Launching the product that you've been so dearly working on for months is like sending your newborn to school for the first time. Excitement to nervousness, anxiety to thrill, all sorts of emotions hit you at the same time. But the entire team of Zipy is confidently looking forward to the feedback you guys have in store for the beautiful product we’ve built. In community we trust!<p>Over the past decade, from being a Web Development Intern to a UX Designer and a Product Manager, I have seen the struggles that both Frontend Dev and Product teams face in terms of understanding user behavior and debugging customer issues. Web technologies evolved significantly, but the debugging process still remained in the stone age. With Zipy, we are trying to change this.<p>Zipy is a product that is primarily of the developers, by the developers and for the developers, essentially built to scratch our own itch, and thus, we've carefully handcrafted various workflows specifically for engineering, product, and support teams. We have been extremely lucky to get support from a bunch of awesome early adopters and partners, who were instrumental in carving our product experience. Hope you all find Zipy very useful. Please give it a try and do share your feedback here: <a href="https://app.zipy.ai/sign-up" rel="nofollow">https://app.zipy.ai/sign-up</a><p>Check out our Website: <a href="https://zipy.ai" rel="nofollow">https://zipy.ai</a>
Quick 15 minute Live Demo: <a href="https://calendly.com/d/crv-vpv-p7c/quickzipydemo" rel="nofollow">https://calendly.com/d/crv-vpv-p7c/quickzipydemo</a>
Join our Discord Server: <a href="https://discord.com/invite/7595RKftFY" rel="nofollow">https://discord.com/invite/7595RKftFY</a><p>Benefits of using Zipy:
Install in a minute
VueJS, React, Angular, Ember, and any javascript web app support
▶ Replay customer sessions with errors in real-time
Dev tools with Stack Trace, Console Logs, and Network Request Response details
Search error sessions by customer name, URL, email ID, and more.
Easy Slack Integration and Alerting<p>Special Coupon for HN Community: 'ZIPYPH1MONTH' for a FREE 1 month access to our Startup Plan.<p>Looking forward to your feedback and support.<p>Fix what matters,
Karthik and Team Zipy.
Show HN: Create your own complete UI color system easy as 1-2-3
Show HN: Create your own complete UI color system easy as 1-2-3
Show HN: Create your own complete UI color system easy as 1-2-3
Show HN: Create your own complete UI color system easy as 1-2-3
Vim Reference Guide
Hello!<p>"Vim Reference Guide" is intended as a concise learning resource for beginner to intermediate level Vim users. I hope this guide would make it much easier for you to discover Vim features and learning resources than my own blundering experience.<p>To celebrate the release, ebook version is free to download till 31-Mar-2022:<p>* <a href="https://learnbyexample.gumroad.com/l/vim_reference_guide" rel="nofollow">https://learnbyexample.gumroad.com/l/vim_reference_guide</a><p>* <a href="https://leanpub.com/vim_reference_guide" rel="nofollow">https://leanpub.com/vim_reference_guide</a><p>Some of my other ebooks and bundles are on sale and I'm currently creating short 1-3 minute videos to highlight Vim features. You can find these details in the above links.<p>Visit <a href="https://github.com/learnbyexample/vim_reference" rel="nofollow">https://github.com/learnbyexample/vim_reference</a> for markdown source and other details related to the book.<p>Hope you find these resources useful. Let me know your feedback.<p>Happy learning :)
PartialExecuter: Reducing WebAssembly size by exploring all executions in LLVM
WebAssembly is commonly used as part of web applications, and minimizing its size is especially important.<p>As part of the latest release of Cheerp, our C++ to WebAssembly/JavaScript compiler, we have introduced a powerful new LLVM optimization that aggressively reduce WebAssembly output size at compile time.<p>We have named this optimization 'PartialExecuter', the key idea behind it being taking advantage of known function parameters to find inner code blocks that cannot ever be possibly executed.<p>Such blocks can then be completely removed from the compiled output, significantly reducing its size.<p>What makes this pass more powerful than typical Dead Code Elimination is the ability of reasoning over all the possible executions that the code can take, while being robust to memory stores and side-effects. Moreover, PartialExecuter can even reason over loads as far as they refer to read-only memory. This latter capability is especially useful to drop code from complex functions whose behavior depend on input strings (i.e. printf).<p>We think this work may be of interest for the HN community, and we welcome feedback and questions.<p>In-depth blog post: <a href="https://leaningtech.com/reducing-webassembly-size-by-exploring-all-executions-in-llvm/" rel="nofollow">https://leaningtech.com/reducing-webassembly-size-by-explori...</a>
Show HN: I made Devzat – It's like Discord but in the terminal, over SSH
Run `ssh devzat.hackclub.com` to try it out! The repo is here: https://github.com/quackduck/devzat (golang).
It has markdown and emoji support, DMs, channels, and it can show images too. You can send code, and it gets syntax highlighted (you can change the theme). You can ping people like so: @user and it sends them a \a, which should play an audible sound if the terminal allows it. There's inbuilt games and rainbow names and a lot of other small things I don't remember right now.<p>You might find the auth system interesting: it's based on a hash of ssh pubkey (bans use that and a hash of IP, so it isn't so easy to get around a ban)<p>Also an interesting issue: bots that go around trying to brute force ssh into random IPs with common usernames. My current solution is banning if rapid successive joins are detected.
Show HN: I made Devzat – It's like Discord but in the terminal, over SSH
Run `ssh devzat.hackclub.com` to try it out! The repo is here: https://github.com/quackduck/devzat (golang).
It has markdown and emoji support, DMs, channels, and it can show images too. You can send code, and it gets syntax highlighted (you can change the theme). You can ping people like so: @user and it sends them a \a, which should play an audible sound if the terminal allows it. There's inbuilt games and rainbow names and a lot of other small things I don't remember right now.<p>You might find the auth system interesting: it's based on a hash of ssh pubkey (bans use that and a hash of IP, so it isn't so easy to get around a ban)<p>Also an interesting issue: bots that go around trying to brute force ssh into random IPs with common usernames. My current solution is banning if rapid successive joins are detected.
Show HN: I made Devzat – It's like Discord but in the terminal, over SSH
Run `ssh devzat.hackclub.com` to try it out! The repo is here: https://github.com/quackduck/devzat (golang).
It has markdown and emoji support, DMs, channels, and it can show images too. You can send code, and it gets syntax highlighted (you can change the theme). You can ping people like so: @user and it sends them a \a, which should play an audible sound if the terminal allows it. There's inbuilt games and rainbow names and a lot of other small things I don't remember right now.<p>You might find the auth system interesting: it's based on a hash of ssh pubkey (bans use that and a hash of IP, so it isn't so easy to get around a ban)<p>Also an interesting issue: bots that go around trying to brute force ssh into random IPs with common usernames. My current solution is banning if rapid successive joins are detected.
Show HN: I made Devzat – It's like Discord but in the terminal, over SSH
Run `ssh devzat.hackclub.com` to try it out! The repo is here: https://github.com/quackduck/devzat (golang).
It has markdown and emoji support, DMs, channels, and it can show images too. You can send code, and it gets syntax highlighted (you can change the theme). You can ping people like so: @user and it sends them a \a, which should play an audible sound if the terminal allows it. There's inbuilt games and rainbow names and a lot of other small things I don't remember right now.<p>You might find the auth system interesting: it's based on a hash of ssh pubkey (bans use that and a hash of IP, so it isn't so easy to get around a ban)<p>Also an interesting issue: bots that go around trying to brute force ssh into random IPs with common usernames. My current solution is banning if rapid successive joins are detected.
Show HN: I made Devzat – It's like Discord but in the terminal, over SSH
Run `ssh devzat.hackclub.com` to try it out! The repo is here: https://github.com/quackduck/devzat (golang).
It has markdown and emoji support, DMs, channels, and it can show images too. You can send code, and it gets syntax highlighted (you can change the theme). You can ping people like so: @user and it sends them a \a, which should play an audible sound if the terminal allows it. There's inbuilt games and rainbow names and a lot of other small things I don't remember right now.<p>You might find the auth system interesting: it's based on a hash of ssh pubkey (bans use that and a hash of IP, so it isn't so easy to get around a ban)<p>Also an interesting issue: bots that go around trying to brute force ssh into random IPs with common usernames. My current solution is banning if rapid successive joins are detected.
Show HN: A Wordle clone made in Google Sheets
Show HN: A Wordle clone made in Google Sheets