The best Hacker News stories from Show from the past day

Go back

Latest posts:

Show HN: I made a split keyboard for large palms

I had an issue a few years ago - every ergonomic keyboard I tried had the switches too close to each other and my fingers were cramped in that small space. Then I decided to create a keyboard which is suitable for larger hands and eliminates most of the wrist movement. 34 keys was the most optimized version for achieving as little wrist movement as possible. You can try the fitment for your palm IRL with the printable template on the website.

Show HN: Jb / json.bash – Command-line tool (and bash library) that creates JSON

jb is a UNIX tool that creates JSON, for shell scripts or interactive use. Its "one thing" is to get shell-native data (environment variables, files, program output) to somewhere else, using JSON encapsulate it robustly.<p>I wrote this because I wanted a robust and ergonomic way to create ad-hoc JSON data from the command line and scripts. I wanted errors to not pass silently, not coerce data types, not put secrets into argv. I wanted to leverage shell features/patterns like process substitution, environment variables, reading/streaming from files and null-terminated data.<p>If you know of the jo program, jb is similar, but type-safe by default and more flexible. jo coerces types, using flags like -n to coerce to a specific type (number for -n), without failing if the input is invalid. jb encodes values as strings by default, requiring type annotations to parse & encode values as a specific type (failing if the value is invalid).<p>If you know jq, jb is complementary in that jq is great at transforming data already in JSON format, but it's fiddly to get non-JSON data into jq. In contrast, jb is good at getting unstructured data from arguments, environment variables and files into JSON (so that jq could use it), but jb cannot do any transformation of data, only parsing & encoding into JSON types.<p>I feel rather guilty about having written this in bash. It's something of a boiled frog story. I started out just wanting to encode JSON strings from a shell script, without dependencies, with the intention of piping them into jq. After a few trials I was able to encode JSON strings in bash with surprising performance, using array operations to encode multiple strings at once. It grew from there into a complete tool. I'd certainly not choose bash if I was starting from scratch now...

Show HN: Jb / json.bash – Command-line tool (and bash library) that creates JSON

jb is a UNIX tool that creates JSON, for shell scripts or interactive use. Its "one thing" is to get shell-native data (environment variables, files, program output) to somewhere else, using JSON encapsulate it robustly.<p>I wrote this because I wanted a robust and ergonomic way to create ad-hoc JSON data from the command line and scripts. I wanted errors to not pass silently, not coerce data types, not put secrets into argv. I wanted to leverage shell features/patterns like process substitution, environment variables, reading/streaming from files and null-terminated data.<p>If you know of the jo program, jb is similar, but type-safe by default and more flexible. jo coerces types, using flags like -n to coerce to a specific type (number for -n), without failing if the input is invalid. jb encodes values as strings by default, requiring type annotations to parse & encode values as a specific type (failing if the value is invalid).<p>If you know jq, jb is complementary in that jq is great at transforming data already in JSON format, but it's fiddly to get non-JSON data into jq. In contrast, jb is good at getting unstructured data from arguments, environment variables and files into JSON (so that jq could use it), but jb cannot do any transformation of data, only parsing & encoding into JSON types.<p>I feel rather guilty about having written this in bash. It's something of a boiled frog story. I started out just wanting to encode JSON strings from a shell script, without dependencies, with the intention of piping them into jq. After a few trials I was able to encode JSON strings in bash with surprising performance, using array operations to encode multiple strings at once. It grew from there into a complete tool. I'd certainly not choose bash if I was starting from scratch now...

Show HN: Jb / json.bash – Command-line tool (and bash library) that creates JSON

jb is a UNIX tool that creates JSON, for shell scripts or interactive use. Its "one thing" is to get shell-native data (environment variables, files, program output) to somewhere else, using JSON encapsulate it robustly.<p>I wrote this because I wanted a robust and ergonomic way to create ad-hoc JSON data from the command line and scripts. I wanted errors to not pass silently, not coerce data types, not put secrets into argv. I wanted to leverage shell features/patterns like process substitution, environment variables, reading/streaming from files and null-terminated data.<p>If you know of the jo program, jb is similar, but type-safe by default and more flexible. jo coerces types, using flags like -n to coerce to a specific type (number for -n), without failing if the input is invalid. jb encodes values as strings by default, requiring type annotations to parse & encode values as a specific type (failing if the value is invalid).<p>If you know jq, jb is complementary in that jq is great at transforming data already in JSON format, but it's fiddly to get non-JSON data into jq. In contrast, jb is good at getting unstructured data from arguments, environment variables and files into JSON (so that jq could use it), but jb cannot do any transformation of data, only parsing & encoding into JSON types.<p>I feel rather guilty about having written this in bash. It's something of a boiled frog story. I started out just wanting to encode JSON strings from a shell script, without dependencies, with the intention of piping them into jq. After a few trials I was able to encode JSON strings in bash with surprising performance, using array operations to encode multiple strings at once. It grew from there into a complete tool. I'd certainly not choose bash if I was starting from scratch now...

Show HN: Jb / json.bash – Command-line tool (and bash library) that creates JSON

jb is a UNIX tool that creates JSON, for shell scripts or interactive use. Its "one thing" is to get shell-native data (environment variables, files, program output) to somewhere else, using JSON encapsulate it robustly.<p>I wrote this because I wanted a robust and ergonomic way to create ad-hoc JSON data from the command line and scripts. I wanted errors to not pass silently, not coerce data types, not put secrets into argv. I wanted to leverage shell features/patterns like process substitution, environment variables, reading/streaming from files and null-terminated data.<p>If you know of the jo program, jb is similar, but type-safe by default and more flexible. jo coerces types, using flags like -n to coerce to a specific type (number for -n), without failing if the input is invalid. jb encodes values as strings by default, requiring type annotations to parse & encode values as a specific type (failing if the value is invalid).<p>If you know jq, jb is complementary in that jq is great at transforming data already in JSON format, but it's fiddly to get non-JSON data into jq. In contrast, jb is good at getting unstructured data from arguments, environment variables and files into JSON (so that jq could use it), but jb cannot do any transformation of data, only parsing & encoding into JSON types.<p>I feel rather guilty about having written this in bash. It's something of a boiled frog story. I started out just wanting to encode JSON strings from a shell script, without dependencies, with the intention of piping them into jq. After a few trials I was able to encode JSON strings in bash with surprising performance, using array operations to encode multiple strings at once. It grew from there into a complete tool. I'd certainly not choose bash if I was starting from scratch now...

Show HN: Xcapture-BPF – like Linux top, but with Xray vision

Show HN: Xcapture-BPF – like Linux top, but with Xray vision

Show HN: Xcapture-BPF – like Linux top, but with Xray vision

Show HN: Xcapture-BPF – like Linux top, but with Xray vision

Show HN: I Made an Open Source Platform for Structuring Any Unstructured Data

Hey HN,<p>I'm Adithya, a 20-year-old dev from India. I have been working with GenAI for the past year, and I've found it really painful to deal with the many different forms of data out there and get the best representation of it for my AI applications.<p>That's why I built OmniParse—an open-source platform designed to handle any unstructured data and transform it into optimized, structured representations.<p>Key Features: - Completely local processing—no external APIs - Supports ~20 file types - Converts documents, multimedia, and web pages to high-quality structured markdown - Table extraction, image extraction/captioning, audio/video transcription, web page crawling - Fits in a T4 GPU - Easily deployable with Docker and Skypilot - Colab friendly with an interactive UI powered by Gradio<p>Why OmniParse? I wanted a platform that could take any kind of data—documents, images, videos, audio files, web pages, and more—and make it clean and structured, ready for AI applications.<p>Check it out on GitHub: <a href="https://git.new/omniparse" rel="nofollow">https://git.new/omniparse</a>

Show HN: I Made an Open Source Platform for Structuring Any Unstructured Data

Hey HN,<p>I'm Adithya, a 20-year-old dev from India. I have been working with GenAI for the past year, and I've found it really painful to deal with the many different forms of data out there and get the best representation of it for my AI applications.<p>That's why I built OmniParse—an open-source platform designed to handle any unstructured data and transform it into optimized, structured representations.<p>Key Features: - Completely local processing—no external APIs - Supports ~20 file types - Converts documents, multimedia, and web pages to high-quality structured markdown - Table extraction, image extraction/captioning, audio/video transcription, web page crawling - Fits in a T4 GPU - Easily deployable with Docker and Skypilot - Colab friendly with an interactive UI powered by Gradio<p>Why OmniParse? I wanted a platform that could take any kind of data—documents, images, videos, audio files, web pages, and more—and make it clean and structured, ready for AI applications.<p>Check it out on GitHub: <a href="https://git.new/omniparse" rel="nofollow">https://git.new/omniparse</a>

Show HN: I made a search engine for Hacker News

I love HN but always felt the search with algolia is okay but does have some limitations. Since I work at Vectara I decided to try and create a better search for HN. It's based on data from roughly the last 6 months of HN stories and comments.<p>Would love to hear feedback and how useful this is relative to the existing search.

Show HN: I made a search engine for Hacker News

I love HN but always felt the search with algolia is okay but does have some limitations. Since I work at Vectara I decided to try and create a better search for HN. It's based on data from roughly the last 6 months of HN stories and comments.<p>Would love to hear feedback and how useful this is relative to the existing search.

Show HN: Adding Mistral Codestral and GPT-4o to Jupyter Notebooks

Hey HN! We’ve forked Jupyter Lab and added AI code generation features that feel native and have all the context about your notebook. You can see a demo video (2 min) here: <a href="https://www.tella.tv/video/clxt7ei4v00rr09i5gt1laop6/view">https://www.tella.tv/video/clxt7ei4v00rr09i5gt1laop6/view</a><p>Try a hosted version here: <a href="https://pretzelai.app" rel="nofollow">https://pretzelai.app</a><p>Jupyter is by far the most used Data Science tool. Despite its popularity, it still lacks good code-generation extensions. The flagship AI extension <i>jupyter-ai</i> lags far behind in features and UX compared to modern AI code generation and understanding tools (like <a href="https://www.continue.dev">https://www.continue.dev</a> and <a href="https://www.cursor.com" rel="nofollow">https://www.cursor.com</a>). Also, GitHub Copilot <i>still</i> isn’t supported in Jupyter, more than 2 years after its launch. We’re solving this with Pretzel.<p>Pretzel is a free and open-source fork of Jupyter. You can install it locally with “pip install pretzelai” and launch it with “pretzel lab”. We recommend creating a new python environment if you already have jupyter lab installed. Our GitHub README has more information: <a href="https://github.com/pretzelai/pretzelai">https://github.com/pretzelai/pretzelai</a><p>For our first iteration, we’ve shipped 3 features:<p>1. Inline Tab autocomplete: This works similar to GitHub Copilot. You can choose between Mistral Codestral or GPT-4o in the settings<p>2. Cell level code generation: Click Ask AI or press Cmd+K / Ctrl+K to instruct AI to generate code in the active Jupyter Cell. We provide relevant context from the current notebook to the LLM with RAG. You can refer to existing variables in the notebook using the @variable syntax (for dataframes, it will pass the column names to the LLM)<p>3. Sidebar chat: Clicking the blue Pretzel Icon on the right sidebar opens this chat (Ctrl+Cmd+B / Ctrl+Alt+B). This chat always has context of your current cell or any selected text. Here too, we use RAG to send any relevant context from the current notebook to the LLM<p>All of these features work out-of-the-box via our “AI Server” but you have the option of using your own OpenAI API Key. This can be configured in the settings (Menu Bar > Settings > Settings Editor > Search for Pretzel). If you use your own OpenAI API Key but don’t have a Mistral API key, be sure to select OpenAI as the inline code completion model in the settings.<p>These features are just a start. We're building a modern version of Jupyter. Our roadmap includes frictionless, realtime collaboration (think pair-programming, comments, version history), full-fledged SQL support (both in code cells and as a standalone SQL IDE), a visual analysis builder, a VSCode-like coding experience powered by Monaco, and 1-click dashboard creation and sharing straight from your notebooks.<p>We’d love for you to try Pretzel and send us any feedback, no matter how minor (see my bio for contact info, or file a GitHub issue here: <a href="https://github.com/pretzelai/pretzelai/issues">https://github.com/pretzelai/pretzelai/issues</a>)

Show HN: Adding Mistral Codestral and GPT-4o to Jupyter Notebooks

Hey HN! We’ve forked Jupyter Lab and added AI code generation features that feel native and have all the context about your notebook. You can see a demo video (2 min) here: <a href="https://www.tella.tv/video/clxt7ei4v00rr09i5gt1laop6/view">https://www.tella.tv/video/clxt7ei4v00rr09i5gt1laop6/view</a><p>Try a hosted version here: <a href="https://pretzelai.app" rel="nofollow">https://pretzelai.app</a><p>Jupyter is by far the most used Data Science tool. Despite its popularity, it still lacks good code-generation extensions. The flagship AI extension <i>jupyter-ai</i> lags far behind in features and UX compared to modern AI code generation and understanding tools (like <a href="https://www.continue.dev">https://www.continue.dev</a> and <a href="https://www.cursor.com" rel="nofollow">https://www.cursor.com</a>). Also, GitHub Copilot <i>still</i> isn’t supported in Jupyter, more than 2 years after its launch. We’re solving this with Pretzel.<p>Pretzel is a free and open-source fork of Jupyter. You can install it locally with “pip install pretzelai” and launch it with “pretzel lab”. We recommend creating a new python environment if you already have jupyter lab installed. Our GitHub README has more information: <a href="https://github.com/pretzelai/pretzelai">https://github.com/pretzelai/pretzelai</a><p>For our first iteration, we’ve shipped 3 features:<p>1. Inline Tab autocomplete: This works similar to GitHub Copilot. You can choose between Mistral Codestral or GPT-4o in the settings<p>2. Cell level code generation: Click Ask AI or press Cmd+K / Ctrl+K to instruct AI to generate code in the active Jupyter Cell. We provide relevant context from the current notebook to the LLM with RAG. You can refer to existing variables in the notebook using the @variable syntax (for dataframes, it will pass the column names to the LLM)<p>3. Sidebar chat: Clicking the blue Pretzel Icon on the right sidebar opens this chat (Ctrl+Cmd+B / Ctrl+Alt+B). This chat always has context of your current cell or any selected text. Here too, we use RAG to send any relevant context from the current notebook to the LLM<p>All of these features work out-of-the-box via our “AI Server” but you have the option of using your own OpenAI API Key. This can be configured in the settings (Menu Bar > Settings > Settings Editor > Search for Pretzel). If you use your own OpenAI API Key but don’t have a Mistral API key, be sure to select OpenAI as the inline code completion model in the settings.<p>These features are just a start. We're building a modern version of Jupyter. Our roadmap includes frictionless, realtime collaboration (think pair-programming, comments, version history), full-fledged SQL support (both in code cells and as a standalone SQL IDE), a visual analysis builder, a VSCode-like coding experience powered by Monaco, and 1-click dashboard creation and sharing straight from your notebooks.<p>We’d love for you to try Pretzel and send us any feedback, no matter how minor (see my bio for contact info, or file a GitHub issue here: <a href="https://github.com/pretzelai/pretzelai/issues">https://github.com/pretzelai/pretzelai/issues</a>)

Show HN: Adding Mistral Codestral and GPT-4o to Jupyter Notebooks

Hey HN! We’ve forked Jupyter Lab and added AI code generation features that feel native and have all the context about your notebook. You can see a demo video (2 min) here: <a href="https://www.tella.tv/video/clxt7ei4v00rr09i5gt1laop6/view">https://www.tella.tv/video/clxt7ei4v00rr09i5gt1laop6/view</a><p>Try a hosted version here: <a href="https://pretzelai.app" rel="nofollow">https://pretzelai.app</a><p>Jupyter is by far the most used Data Science tool. Despite its popularity, it still lacks good code-generation extensions. The flagship AI extension <i>jupyter-ai</i> lags far behind in features and UX compared to modern AI code generation and understanding tools (like <a href="https://www.continue.dev">https://www.continue.dev</a> and <a href="https://www.cursor.com" rel="nofollow">https://www.cursor.com</a>). Also, GitHub Copilot <i>still</i> isn’t supported in Jupyter, more than 2 years after its launch. We’re solving this with Pretzel.<p>Pretzel is a free and open-source fork of Jupyter. You can install it locally with “pip install pretzelai” and launch it with “pretzel lab”. We recommend creating a new python environment if you already have jupyter lab installed. Our GitHub README has more information: <a href="https://github.com/pretzelai/pretzelai">https://github.com/pretzelai/pretzelai</a><p>For our first iteration, we’ve shipped 3 features:<p>1. Inline Tab autocomplete: This works similar to GitHub Copilot. You can choose between Mistral Codestral or GPT-4o in the settings<p>2. Cell level code generation: Click Ask AI or press Cmd+K / Ctrl+K to instruct AI to generate code in the active Jupyter Cell. We provide relevant context from the current notebook to the LLM with RAG. You can refer to existing variables in the notebook using the @variable syntax (for dataframes, it will pass the column names to the LLM)<p>3. Sidebar chat: Clicking the blue Pretzel Icon on the right sidebar opens this chat (Ctrl+Cmd+B / Ctrl+Alt+B). This chat always has context of your current cell or any selected text. Here too, we use RAG to send any relevant context from the current notebook to the LLM<p>All of these features work out-of-the-box via our “AI Server” but you have the option of using your own OpenAI API Key. This can be configured in the settings (Menu Bar > Settings > Settings Editor > Search for Pretzel). If you use your own OpenAI API Key but don’t have a Mistral API key, be sure to select OpenAI as the inline code completion model in the settings.<p>These features are just a start. We're building a modern version of Jupyter. Our roadmap includes frictionless, realtime collaboration (think pair-programming, comments, version history), full-fledged SQL support (both in code cells and as a standalone SQL IDE), a visual analysis builder, a VSCode-like coding experience powered by Monaco, and 1-click dashboard creation and sharing straight from your notebooks.<p>We’d love for you to try Pretzel and send us any feedback, no matter how minor (see my bio for contact info, or file a GitHub issue here: <a href="https://github.com/pretzelai/pretzelai/issues">https://github.com/pretzelai/pretzelai/issues</a>)

Show HN: ViperIDE – MicroPython IDE for web and mobile

Show HN: ViperIDE – MicroPython IDE for web and mobile

Show HN: ViperIDE – MicroPython IDE for web and mobile

Show HN: AI assisted image editing with audio instructions

Excited to launch AAIELA, an AI-powered tool that understands your spoken commands and edits images accordingly. By leveraging open-source AI models for computer vision, speech-to-text, large language models (LLMs), and text-to-image inpainting, we have created a seamless editing experience that bridges the gap between spoken language and visual transformation.<p>Imagine the possibilities if Google Photos integrated voice assisted editing like AAIELA! Alongside Magic Eraser and other AI tools, editing with audio instruction could revolutionize how we interact with our photos.

< 1 2 3 ... 70 71 72 73 74 ... 719 720 721 >