The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Glasskube – Open Source Kubernetes Package Manager, alternative to Helm
Hello HN, we're Philip and Louis from Glasskube (<a href="https://github.com/glasskube/glasskube">https://github.com/glasskube/glasskube</a>). We're working on an open-source package manager for Kubernetes. It's an alternative to tools like Helm or Kustomize, primarily focused on making deploying, updating, and configuring Kubernetes packages simpler and a lot faster. Here is a demo video (<a href="https://www.youtube.com/watch?v=aIeTHGWsG2c#t=17s" rel="nofollow">https://www.youtube.com/watch?v=aIeTHGWsG2c#t=17s</a>) with quick start instructions.<p>Most developers working with Kubernetes use Helm, an open-source tool created during a hackathon nine years ago. However, with the rapid growth of Kubernetes packages to over 800 packages on the CNCF landscape today, the prerequisites have changed, and we believe it’s time for a new package manager. Every engineer we talked to has a love-hate relationship with Helm, and we also found ourselves defaulting to Helm despite its shortcomings due to a lack of alternatives.<p>We have spent enough time trying to get Helm to do what we need. From looking for the correct chart, trying to learn how each value affects the components and hand-crafting a schemaless values.yaml file, to debugging the final release if it inevitably fails to install, the experience of using Helm is, for the most part, time consuming and cumbersome.<p>Charts often become more complex, requiring the use of sub-charts. These umbrella charts tend to be even harder to maintain and upgrade, because so many different components are bundled into a single release.<p>We talked to over 100 developers and found that everyone developed their own little workarounds, with some working better than others. We collected the feedback poured everything we learned from that into a new package manager. We want to build something that is as easy to use as Homebrew or npm and make package management on Kubernetes as easy as on every other platform.<p>Some of the features Glasskube already supports are<p>Typesafe package configuration via UI or interactive CLI to inject values from other packages, ConfigMaps, and Secrets.<p>Browse our central package repository so there is no need to look for a Helm repository to find a specific package.<p>All packages are dependency-aware so they can be used and referenced by multiple other packages even across namespaces. We validate the complete dependency tree - So packages get installed in the correct namespace.<p>Preview and perform pending updates to your desired version with a single click of a button. All updates have been tested in the Glasskube test suite before being available in the public repository.<p>Use multiple repositories and publish your own private packages (e.g., your company's internal services packages, so all developers will have the up-to-date and easily configured internal services).<p>All features are available via UI or interactive CLI. You can also manage all packages via GitOps.<p>Currently, we are focused on enhancing the user experience, aiming to save engineers as much time as possible. We are still using Helm and Manifests under the hood. However, together with the community, we plan to develop an entirely new packaging and bundling format for all cloud-native packages. This will provide package developers with a straightforward way to define how to install and configure packages, offer simple upgrade paths, and enable us to provide feedback, crash reports, and analytics to every developer working on Kubernetes packages.<p>We also started working on a cloud version. You can pre-signup here in case you are interested: <a href="https://glasskube.cloud" rel="nofollow">https://glasskube.cloud</a><p>We'd greatly appreciate any feedback you have and hope you get the chance to try out Glasskube.
Show HN: From dotenv to dotenvx – better config management
Show HN: From dotenv to dotenvx – better config management
Show HN: I built a JavaScript-powered flipdisc display
Show HN: I built a JavaScript-powered flipdisc display
Show HN: I built a JavaScript-powered flipdisc display
Show HN: I made an AI-finance tracker that let's you chat with your wallet
Show HN: I Built a Tool to Break Free from YouTube's Addictive Algorithm
I built Watchlist to solve a problem that's been nagging at me (and I suspect many others): YouTube's addictive nature and its impact on productivity.<p>The Problem:<p>YouTube is an incredible source of knowledge, but its homepage is an unending scroll of rabbit holes. The algorithm is designed to maximize watch time, often at the expense of our intentions and productivity. I found myself wasting hours, jumping from video to video, and then blaming myself for the lack of self-control.<p>The Solution:<p>Watchlist! Watchlist is essentially YouTube playlists on steroids. Here's how it works:<p>1. Create custom "lists" for different topics (e.g., AI, Science, Programming)
2. Add relevant channels to each list
3. Watchlist automatically adds new uploads from these channels to your lists
4. Set custom notification schedules for each list (e.g., every morning at 8 AM, every Sunday at 5 PM)
5. Receive email or push notifications (your choice) when there are new unwatched videos<p>The result? You stay updated on the content you care about without falling into the YouTube homepage trap.<p>Tech Stack:<p>Built with Python, JavaScript, Supabase & Google Cloud Run. (Took six weeks)<p>Why I Built This:<p>As an electrical engineer turned software developer, I've always been fascinated by programming. This project combines my love for coding with a real-world problem I've experienced firsthand.<p>Try It Out:<p>To make it as easy as possible for you to try Watchlist, I've set up a 1-click dummy login:<p><a href="http://watchlist.so/login/dummy" rel="nofollow">http://watchlist.so/login/dummy</a><p>This generates a dummy email and password for you, valid for 14 days. Although this account has full access, please note some restrictions:<p>- You cannot reset the password
- Email notifications are disabled
- Data cannot be migrated to another account
- The account will be deactivated after 14 days<p>For those who prefer a proper account, you can register normally at: <a href="https://watchlist.so/signup" rel="nofollow">https://watchlist.so/signup</a><p>Feedback:<p>I've seen many people struggle with YouTube addiction without realizing the root cause. If you've faced similar issues or have thoughts on this approach, I'd love to hear your feedback. Your thoughts and suggestions are crucial for improving Watchlist. There's a dedicated feedback page at:<p><a href="https://watchlist.so/settings/feedback" rel="nofollow">https://watchlist.so/settings/feedback</a><p>I'm eager to hear your experiences and ideas! Thanks!<p>PS: This is my first Show HN. So, please excuse me if I made any mistakes. I tried my best to follow the guidelines.
Show HN: Store Text in Minesweeper
Show HN: Feedback on Sketch Colourisation
Hi
I am looking for some feedback on our new project "Sketch Colourisation". The envisioned UI and objectives are --<p>* An artist should have greater control on how to colour a sketch. While a text-to-image model lacks this fine-grained control, a per-pixel colourisation pipeline makes sketch colourisation a laborious process with high-entry barrier.<p>* What if an artist only draws a mask for a local region and specifies the colour palette for that local region? Then a neural network figures out how to colour the overall sketch -- while maintaining those local colour palette.<p>[I would really like a feedback if the above UI (i.e., mask and local colour palette) makes sense to users/designers. As researchers, we often have the wrong idea of what is desired by end-users.]<p>* On the exact implementation of the above concept, we designed a no-training based neural network framework -- and also make sure it runs on a Nvidia 4090. In other words, I will try to avoid any expensive training or inference -- which defeats the purpose of being useful to people (not just some research labs).<p>* Note, I am not so bothered about the exact implementation (or whether it is "novel") -- as long as it is useful.<p>* A shameless advertisement: The codebase (<a href="https://github.com/CHAITron/sketchdeco-code.git">https://github.com/CHAITron/sketchdeco-code.git</a>) is MIT License. It is no way near to being useful to people -- but I would really like to pursue this direction and your feedback/criticism will be immensely helpful.<p>Thanks
Show HN: Online OPML editor to manage subscription lists
I made a small online editor to manage OPML[1] files easily. There are a lot of smart online editors for formats like JSON, but while OPML is supported by most subscriptions services, the experience of editing/managing it is poor outside of what each platform support. The pain of managing the file independently increases as the size of the OPML file grow larger.<p>It's rather simple at the moment but the goal is to provide shortcuts for common desired tasks to make the experience of editing OPML much smoother and streamlined.<p>The editor is a static website that runs locally in your browser, it doesn't require an account, nor do any tracking.<p>Let me know your feedback or if you've any pain points around OPML<p>GitHub repo: <a href="https://github.com/imdj/opml-editor">https://github.com/imdj/opml-editor</a><p>Website: <a href="https://opml.imadij.com/" rel="nofollow">https://opml.imadij.com/</a><p>[1] - <a href="https://en.wikipedia.org/wiki/OPML" rel="nofollow">https://en.wikipedia.org/wiki/OPML</a>
Show HN: Online OPML editor to manage subscription lists
I made a small online editor to manage OPML[1] files easily. There are a lot of smart online editors for formats like JSON, but while OPML is supported by most subscriptions services, the experience of editing/managing it is poor outside of what each platform support. The pain of managing the file independently increases as the size of the OPML file grow larger.<p>It's rather simple at the moment but the goal is to provide shortcuts for common desired tasks to make the experience of editing OPML much smoother and streamlined.<p>The editor is a static website that runs locally in your browser, it doesn't require an account, nor do any tracking.<p>Let me know your feedback or if you've any pain points around OPML<p>GitHub repo: <a href="https://github.com/imdj/opml-editor">https://github.com/imdj/opml-editor</a><p>Website: <a href="https://opml.imadij.com/" rel="nofollow">https://opml.imadij.com/</a><p>[1] - <a href="https://en.wikipedia.org/wiki/OPML" rel="nofollow">https://en.wikipedia.org/wiki/OPML</a>
Show HN: Online OPML editor to manage subscription lists
I made a small online editor to manage OPML[1] files easily. There are a lot of smart online editors for formats like JSON, but while OPML is supported by most subscriptions services, the experience of editing/managing it is poor outside of what each platform support. The pain of managing the file independently increases as the size of the OPML file grow larger.<p>It's rather simple at the moment but the goal is to provide shortcuts for common desired tasks to make the experience of editing OPML much smoother and streamlined.<p>The editor is a static website that runs locally in your browser, it doesn't require an account, nor do any tracking.<p>Let me know your feedback or if you've any pain points around OPML<p>GitHub repo: <a href="https://github.com/imdj/opml-editor">https://github.com/imdj/opml-editor</a><p>Website: <a href="https://opml.imadij.com/" rel="nofollow">https://opml.imadij.com/</a><p>[1] - <a href="https://en.wikipedia.org/wiki/OPML" rel="nofollow">https://en.wikipedia.org/wiki/OPML</a>
I am using AI to drop hats outside my window onto New Yorkers
Show HN: Envelope – A modern environment variable cli tool
Hey HN! I've built this cli tool to manage env variables of a project, but mostly for fun and to try out Rust and the clap crate.<p>I had this idea when I made a big mistake and broke some production stuff because I had a very messy .env file laying around in my project.<p>I was implementing new features for one of my projects and in my .env file I had the test database url commented out and the production one was not. Long story short, I applied migrations to the production database instead of my local test one and broke a lot of production APIs :')<p>I wanted a tool that could easily help me spot these issues before something bad happened, and so I built envelope for that reason.<p>Instead of a \.env(\..+)? file, I now use this tool to add variables to different configurations: dev, prod etc. and I feed them to the program I am executing on a one liner.<p><pre><code> $ envelope init
$ envelope add dev db_url localhost:5432/postgres
$ envelope add dev db_username username
$ envelope add dev db_pwd pwd
$ export $(envelope list dev)
$ ./run.sh
</code></pre>
This way I am explicitly exporting the dev environment without relying on the fact that everything is in order in my .env file (another approach would be to have a .env.dev file)<p>A very useful feature that I use quite a lot is the `check` command which is going to tell you which environment you have currently active<p><pre><code> $ export $(envelope list dev)
$ envelope check
> dev
</code></pre>
I don't think this tool is going to be useful to anybody, but I wanted to share this with you in case there is someone that can make good use of it or find particular scenarios where this could be used instead of .env files, either way I had a lot of fun building it
Show HN: Envelope – A modern environment variable cli tool
Hey HN! I've built this cli tool to manage env variables of a project, but mostly for fun and to try out Rust and the clap crate.<p>I had this idea when I made a big mistake and broke some production stuff because I had a very messy .env file laying around in my project.<p>I was implementing new features for one of my projects and in my .env file I had the test database url commented out and the production one was not. Long story short, I applied migrations to the production database instead of my local test one and broke a lot of production APIs :')<p>I wanted a tool that could easily help me spot these issues before something bad happened, and so I built envelope for that reason.<p>Instead of a \.env(\..+)? file, I now use this tool to add variables to different configurations: dev, prod etc. and I feed them to the program I am executing on a one liner.<p><pre><code> $ envelope init
$ envelope add dev db_url localhost:5432/postgres
$ envelope add dev db_username username
$ envelope add dev db_pwd pwd
$ export $(envelope list dev)
$ ./run.sh
</code></pre>
This way I am explicitly exporting the dev environment without relying on the fact that everything is in order in my .env file (another approach would be to have a .env.dev file)<p>A very useful feature that I use quite a lot is the `check` command which is going to tell you which environment you have currently active<p><pre><code> $ export $(envelope list dev)
$ envelope check
> dev
</code></pre>
I don't think this tool is going to be useful to anybody, but I wanted to share this with you in case there is someone that can make good use of it or find particular scenarios where this could be used instead of .env files, either way I had a lot of fun building it
Show HN: Envelope – A modern environment variable cli tool
Hey HN! I've built this cli tool to manage env variables of a project, but mostly for fun and to try out Rust and the clap crate.<p>I had this idea when I made a big mistake and broke some production stuff because I had a very messy .env file laying around in my project.<p>I was implementing new features for one of my projects and in my .env file I had the test database url commented out and the production one was not. Long story short, I applied migrations to the production database instead of my local test one and broke a lot of production APIs :')<p>I wanted a tool that could easily help me spot these issues before something bad happened, and so I built envelope for that reason.<p>Instead of a \.env(\..+)? file, I now use this tool to add variables to different configurations: dev, prod etc. and I feed them to the program I am executing on a one liner.<p><pre><code> $ envelope init
$ envelope add dev db_url localhost:5432/postgres
$ envelope add dev db_username username
$ envelope add dev db_pwd pwd
$ export $(envelope list dev)
$ ./run.sh
</code></pre>
This way I am explicitly exporting the dev environment without relying on the fact that everything is in order in my .env file (another approach would be to have a .env.dev file)<p>A very useful feature that I use quite a lot is the `check` command which is going to tell you which environment you have currently active<p><pre><code> $ export $(envelope list dev)
$ envelope check
> dev
</code></pre>
I don't think this tool is going to be useful to anybody, but I wanted to share this with you in case there is someone that can make good use of it or find particular scenarios where this could be used instead of .env files, either way I had a lot of fun building it
Show HN: Envelope – A modern environment variable cli tool
Hey HN! I've built this cli tool to manage env variables of a project, but mostly for fun and to try out Rust and the clap crate.<p>I had this idea when I made a big mistake and broke some production stuff because I had a very messy .env file laying around in my project.<p>I was implementing new features for one of my projects and in my .env file I had the test database url commented out and the production one was not. Long story short, I applied migrations to the production database instead of my local test one and broke a lot of production APIs :')<p>I wanted a tool that could easily help me spot these issues before something bad happened, and so I built envelope for that reason.<p>Instead of a \.env(\..+)? file, I now use this tool to add variables to different configurations: dev, prod etc. and I feed them to the program I am executing on a one liner.<p><pre><code> $ envelope init
$ envelope add dev db_url localhost:5432/postgres
$ envelope add dev db_username username
$ envelope add dev db_pwd pwd
$ export $(envelope list dev)
$ ./run.sh
</code></pre>
This way I am explicitly exporting the dev environment without relying on the fact that everything is in order in my .env file (another approach would be to have a .env.dev file)<p>A very useful feature that I use quite a lot is the `check` command which is going to tell you which environment you have currently active<p><pre><code> $ export $(envelope list dev)
$ envelope check
> dev
</code></pre>
I don't think this tool is going to be useful to anybody, but I wanted to share this with you in case there is someone that can make good use of it or find particular scenarios where this could be used instead of .env files, either way I had a lot of fun building it
Show HN: Simple script to cripple personalized targeting from Facebook
Show HN: Simple script to cripple personalized targeting from Facebook