The best Hacker News stories from Show from the past day
Latest posts:
Show HN: V1 – An open-source starter kit for your next project
Introducing v1: a free, open-source starter kit for your next project, built with insights from Midday.<p>This monorepo is designed for rapid development, using the best tools and services available today.<p>It includes Next.js and Supabase for a robust foundation, along with:<p>* Sentry - Error monitoring
* Resend - Email delivery
* Triggerdotdev - Background jobs
* Dub - Sharable links
* Upstash - Cache and rate limiting
* OpenPanel - Analytics
* Polar - Billing
* Vercel - Hosting<p>We have handpicked the best libraries in the ecosystem:<p>* Shadcn - UI components
* React Email - Email templates
* react-safe-action - Server actions
* nuqs - Type-safe Search params
* next-themes - Theme manager
* Turborepo - Build system
* Biome - Linter, formatter<p>We hope you enjoy it as much as we do! We'd love to hear your feedback and see what you build!
Show HN: Supertree – interactive visualization of decision trees in Python
Hi All,<p>I would like to share with you a new Python package for interactive decision tree visualization. It is called `supertree`. It visualizes decision tree as interactive graph, where you can collapse and expand selected nodes. You can zoom and pan though large trees. It works with Scikit-learn, Xgboost, and LightGBM.<p>The package works in notebooks: Jupyter Lab, Jupyter Notebook, Google Colab. You can also use it in Python scripts and save output trees to HTML.<p>The package is available on pip: `pip install supertree`.<p>You can find code examples on the GitHub: <a href="https://github.com/mljar/supertree">https://github.com/mljar/supertree</a><p>Happy exploring!
Show HN: Supertree – interactive visualization of decision trees in Python
Hi All,<p>I would like to share with you a new Python package for interactive decision tree visualization. It is called `supertree`. It visualizes decision tree as interactive graph, where you can collapse and expand selected nodes. You can zoom and pan though large trees. It works with Scikit-learn, Xgboost, and LightGBM.<p>The package works in notebooks: Jupyter Lab, Jupyter Notebook, Google Colab. You can also use it in Python scripts and save output trees to HTML.<p>The package is available on pip: `pip install supertree`.<p>You can find code examples on the GitHub: <a href="https://github.com/mljar/supertree">https://github.com/mljar/supertree</a><p>Happy exploring!
Show HN: A retro terminal text editor for GNU/Linux coded in C (C-edit)
I set about coding my own version of the classic MS-DOS EDIT.COM for GNU/Linux systems four years ago and it this is where the project is at... still rough around the edges but works well with Termux! :)
Demo:
<a href="https://www.youtube.com/watch?v=H7bneUX_kVA" rel="nofollow">https://www.youtube.com/watch?v=H7bneUX_kVA</a>
Show HN: A retro terminal text editor for GNU/Linux coded in C (C-edit)
I set about coding my own version of the classic MS-DOS EDIT.COM for GNU/Linux systems four years ago and it this is where the project is at... still rough around the edges but works well with Termux! :)
Demo:
<a href="https://www.youtube.com/watch?v=H7bneUX_kVA" rel="nofollow">https://www.youtube.com/watch?v=H7bneUX_kVA</a>
Show HN: A retro terminal text editor for GNU/Linux coded in C (C-edit)
I set about coding my own version of the classic MS-DOS EDIT.COM for GNU/Linux systems four years ago and it this is where the project is at... still rough around the edges but works well with Termux! :)
Demo:
<a href="https://www.youtube.com/watch?v=H7bneUX_kVA" rel="nofollow">https://www.youtube.com/watch?v=H7bneUX_kVA</a>
Show HN: Typeform alternative, turns Markdown to forms
Show HN: Typeform alternative, turns Markdown to forms
Show HN: Typeform alternative, turns Markdown to forms
Show HN: LLM-Term – Simple Rust-based CLI assist tool
Current AI-assisted CLI tools are often part of larger systems and work better on Linux.
I built llm-term to address these. It's a Rust-based tool that compiles into a single binary file. You only need to download the binary, add it to your PATH, and configure your OpenAI key to get started.
While llm-term offers an option for gpt-4o, it works great with gpt-4o-mini. So it's not costly.
I appreciate any feedback or suggestions.
Show HN: bpfquery – experimenting with compiling SQL to bpf(trace)
Hello! The last few weeks I've been experimenting with compiling sql queries to bpftrace programs and then working with the results. bpfquery.com is the result of that, source available at <a href="https://github.com/zmaril/bpfquery">https://github.com/zmaril/bpfquery</a>. It's a very minimal sql to bpftrace compiler that lets you explore what's going on with your systems. It implements queries, expressions, and filters/wheres/predicates, and has a streaming pivot table interface built on <a href="https://perspective.finos.org" rel="nofollow">https://perspective.finos.org</a>. I am still figuring out how to do windows, aggregations and joins though, but the pivot table interface actually lets you get surprisingly far. I hope you enjoy it!
Show HN: bpfquery – experimenting with compiling SQL to bpf(trace)
Hello! The last few weeks I've been experimenting with compiling sql queries to bpftrace programs and then working with the results. bpfquery.com is the result of that, source available at <a href="https://github.com/zmaril/bpfquery">https://github.com/zmaril/bpfquery</a>. It's a very minimal sql to bpftrace compiler that lets you explore what's going on with your systems. It implements queries, expressions, and filters/wheres/predicates, and has a streaming pivot table interface built on <a href="https://perspective.finos.org" rel="nofollow">https://perspective.finos.org</a>. I am still figuring out how to do windows, aggregations and joins though, but the pivot table interface actually lets you get surprisingly far. I hope you enjoy it!
Show HN: bpfquery – experimenting with compiling SQL to bpf(trace)
Hello! The last few weeks I've been experimenting with compiling sql queries to bpftrace programs and then working with the results. bpfquery.com is the result of that, source available at <a href="https://github.com/zmaril/bpfquery">https://github.com/zmaril/bpfquery</a>. It's a very minimal sql to bpftrace compiler that lets you explore what's going on with your systems. It implements queries, expressions, and filters/wheres/predicates, and has a streaming pivot table interface built on <a href="https://perspective.finos.org" rel="nofollow">https://perspective.finos.org</a>. I am still figuring out how to do windows, aggregations and joins though, but the pivot table interface actually lets you get surprisingly far. I hope you enjoy it!
Show HN: Amine – Prevents you from switching 100s of Browser Tabs
I made this out of necessity. I just cant stop switching tabs while I must be doing something else!
And I have found a lot many people who have faced this. What about you?<p>I had tried blockers like Cold Turkey, Freedom and RescueTime but they lack a lot many features I wanted. They leave you dependent upon your will power, but <i>Will Power is not just enough!</i><p>I tried to address the things which none other tool seems to eliminate. Key combinations, Mouse movements to switch tabs, leaving the full screen when temptation hits, etc.<p>I learnt a lot about Threading and UI design on the process, and finally forced myself to learn Figma.<p>Hope this helps, at least one person :)
Show HN: turn videos into ASCII art (open source, js+canvas)
This tool turns videos into ASCII pixel art. You can use your webcam feed or upload a video, then use the controls to adjust the colors, resolution, text style, etc.<p>Github repo: <a href="https://github.com/collidingScopes/ascii">https://github.com/collidingScopes/ascii</a><p>It's built with javascript / html canvas.<p>I'll be continuing to work on this, with the goal of improving performance (it can be laggy at high resolutions) and to also allow image input (turn an image into animated ASCII art).<p>Please let me know of any feedback or suggestions!
Show HN: turn videos into ASCII art (open source, js+canvas)
This tool turns videos into ASCII pixel art. You can use your webcam feed or upload a video, then use the controls to adjust the colors, resolution, text style, etc.<p>Github repo: <a href="https://github.com/collidingScopes/ascii">https://github.com/collidingScopes/ascii</a><p>It's built with javascript / html canvas.<p>I'll be continuing to work on this, with the goal of improving performance (it can be laggy at high resolutions) and to also allow image input (turn an image into animated ASCII art).<p>Please let me know of any feedback or suggestions!
Show HN: turn videos into ASCII art (open source, js+canvas)
This tool turns videos into ASCII pixel art. You can use your webcam feed or upload a video, then use the controls to adjust the colors, resolution, text style, etc.<p>Github repo: <a href="https://github.com/collidingScopes/ascii">https://github.com/collidingScopes/ascii</a><p>It's built with javascript / html canvas.<p>I'll be continuing to work on this, with the goal of improving performance (it can be laggy at high resolutions) and to also allow image input (turn an image into animated ASCII art).<p>Please let me know of any feedback or suggestions!
Show HN: A discovery-focused search engine for Hacker News
We (Nick, Dens, Denzell, Fede, Drew, Aaryan, and Daniel) have been building HN Discovery, a discovery-focused search engine for Hacker News, in our spare time for the past 6 months and are excited to show it! It adds the following features relative to the existing keyword search interface and preserves the existing ones:<p>- no-JS version (hnnojs.trieve.ai)<p>- site:{required_site} and site:{negated-site} filters<p>- public analytics<p>- LLM generated query suggestions based on random stories<p>- recommendations<p>- dense vector semantic search<p>- SPLADE fulltext search<p>- RAG AI chat<p>- order by descendant count<p>client code (FOSS self-hostable) - <a href="https://github.com/devflowinc/trieve-hn-discovery">https://github.com/devflowinc/trieve-hn-discovery</a><p>engine code (BSL source-available) - <a href="https://github.com/devflowinc/trieve">https://github.com/devflowinc/trieve</a><p>There is an extended about page with detailed information on features, how much it costs to run, etc. here - <a href="https://hn.trieve.ai/about">https://hn.trieve.ai/about</a>.
Show HN: An open-source, local-first Webflow for your own app
Hey HN, I’m Kiet, and I’m one of the co-founders of Onlook – an open-sourced desktop app that lets you visually edit your locally running React app, then write your changes back to code in real time.<p>I posted the repo a few months ago [1] when it was just 2 weeks old. Since then, we’ve made some big changes/improvements. I wanted to share some of the updates we’ve made and add more technical details. Here are the three big ones:<p>• Inserting new elements - Draw elements in the live page like a design tool and write them back to code.
• Component detection - Detect when an element is a re-used component and find its usages.
• DOM tree representation - A layers panel similar to the Chrome devtool or Figma.<p>Technical details [2]:<p>Visual editing - Onlook is technically a browser that points to your localhost running the app. It can manipulate the DOM like a Chrome Devtool, and all these changes are injected into the page through a CSS stylesheet or DOM manipulation. The changes are non-persistent until written to code.<p>Write to code - To translate the changes to code, we inject an attribute into the DOM elements at build-time that points back to the code like a source map. The attribute gives us the location of the code block, and the component scope [3]. We then find the code, parse it into an AST, inject the styles, and write it back.<p>Framework support - This technique is framework agnostic as we can swap in a different compiler for another framework [4]. It can work for any codebase as we’re just using open standards that don’t require any custom code. The code generated is written directly into your codebase, locally, so you can always take the output without being locked-in to the tool.<p>Actions - All the changes made are stored as actions. This allows them to be serialized, stored, and reproduced. We did it this way so eventually, we can introduce online collaboration or let an agent generate actions. To do this, we’d just need to serve the locally running page and resolve incoming actions.<p>What’s next?<p>It’s still a bit bare-bones but the support and suggestions from the HN and open-source communities have helped us a lot with our direction. Now that we’ve built the core engine, we can start doing some cooler visual builder features, fulfilling the “Webflow” part of our mission such as [5]:<p>• Detecting CSS variables in the page and letting you use them as “design tokens” in the UI.
• Duplicating a page and A/B testing designs before committing to code.
• Creating new components directly in the canvas.
• Creating a front-end project from scratch using Onlook.<p>Some things we’re considering, but aren’t sure about yet:<p>• Offer hosting directly from the app.
• Collaboration such as real-time edits, comments, and share page as a prototype.<p>I’d love to hear your thoughts/feedback. This project continues to be a blast to work on and the community response has been awesome. Thank you to everyone who has tried out and contributed to the repo :)<p>_________<p>[1] <a href="https://news.ycombinator.com/item?id=40904862">https://news.ycombinator.com/item?id=40904862</a><p>[2] <a href="https://github.com/onlook-dev/onlook/wiki/Architecture">https://github.com/onlook-dev/onlook/wiki/Architecture</a><p>[3] The attribute looks something like this:<p><pre><code> data-onlook-id="eJxNjUEKwzAMBP+ic6gOKT3k2i+kDzC2aEwcKVgyDQT/vU5pS067sMvMDl6WVZjYYIC7y2GMlgg6IA6je8LAJaUOVmdTO+BDKSvOkWwSfEme1+Q8oXASmVGthCgYaBFFps3wT1csEX3jX0y3hldz2T6C/VAd4SWVhWG4dpAiUyt9/R7Pc/+b+1ut9Q33rUM5"
</code></pre>
And decodes to this:<p><pre><code> {"component":"Dashboard","endTag":{"end":{"column":10,"line":620},"start":{"column":5,"line":620}},"path":"/Users/kietho/workplace/onlook/studio/demos/next/components/dashboard.tsx","startTag":{"end":{"column":67,"line":69},"start":{"column":5,"line":69}}}
</code></pre>
[4] We’re only supporting a few versions of React at the moment for early focus: <a href="https://github.com/onlook-dev/onlook/tree/main/demos">https://github.com/onlook-dev/onlook/tree/main/demos</a><p>[5] <a href="https://github.com/onlook-dev/onlook/wiki/Roadmap">https://github.com/onlook-dev/onlook/wiki/Roadmap</a>
Show HN: An open-source, local-first Webflow for your own app
Hey HN, I’m Kiet, and I’m one of the co-founders of Onlook – an open-sourced desktop app that lets you visually edit your locally running React app, then write your changes back to code in real time.<p>I posted the repo a few months ago [1] when it was just 2 weeks old. Since then, we’ve made some big changes/improvements. I wanted to share some of the updates we’ve made and add more technical details. Here are the three big ones:<p>• Inserting new elements - Draw elements in the live page like a design tool and write them back to code.
• Component detection - Detect when an element is a re-used component and find its usages.
• DOM tree representation - A layers panel similar to the Chrome devtool or Figma.<p>Technical details [2]:<p>Visual editing - Onlook is technically a browser that points to your localhost running the app. It can manipulate the DOM like a Chrome Devtool, and all these changes are injected into the page through a CSS stylesheet or DOM manipulation. The changes are non-persistent until written to code.<p>Write to code - To translate the changes to code, we inject an attribute into the DOM elements at build-time that points back to the code like a source map. The attribute gives us the location of the code block, and the component scope [3]. We then find the code, parse it into an AST, inject the styles, and write it back.<p>Framework support - This technique is framework agnostic as we can swap in a different compiler for another framework [4]. It can work for any codebase as we’re just using open standards that don’t require any custom code. The code generated is written directly into your codebase, locally, so you can always take the output without being locked-in to the tool.<p>Actions - All the changes made are stored as actions. This allows them to be serialized, stored, and reproduced. We did it this way so eventually, we can introduce online collaboration or let an agent generate actions. To do this, we’d just need to serve the locally running page and resolve incoming actions.<p>What’s next?<p>It’s still a bit bare-bones but the support and suggestions from the HN and open-source communities have helped us a lot with our direction. Now that we’ve built the core engine, we can start doing some cooler visual builder features, fulfilling the “Webflow” part of our mission such as [5]:<p>• Detecting CSS variables in the page and letting you use them as “design tokens” in the UI.
• Duplicating a page and A/B testing designs before committing to code.
• Creating new components directly in the canvas.
• Creating a front-end project from scratch using Onlook.<p>Some things we’re considering, but aren’t sure about yet:<p>• Offer hosting directly from the app.
• Collaboration such as real-time edits, comments, and share page as a prototype.<p>I’d love to hear your thoughts/feedback. This project continues to be a blast to work on and the community response has been awesome. Thank you to everyone who has tried out and contributed to the repo :)<p>_________<p>[1] <a href="https://news.ycombinator.com/item?id=40904862">https://news.ycombinator.com/item?id=40904862</a><p>[2] <a href="https://github.com/onlook-dev/onlook/wiki/Architecture">https://github.com/onlook-dev/onlook/wiki/Architecture</a><p>[3] The attribute looks something like this:<p><pre><code> data-onlook-id="eJxNjUEKwzAMBP+ic6gOKT3k2i+kDzC2aEwcKVgyDQT/vU5pS067sMvMDl6WVZjYYIC7y2GMlgg6IA6je8LAJaUOVmdTO+BDKSvOkWwSfEme1+Q8oXASmVGthCgYaBFFps3wT1csEX3jX0y3hldz2T6C/VAd4SWVhWG4dpAiUyt9/R7Pc/+b+1ut9Q33rUM5"
</code></pre>
And decodes to this:<p><pre><code> {"component":"Dashboard","endTag":{"end":{"column":10,"line":620},"start":{"column":5,"line":620}},"path":"/Users/kietho/workplace/onlook/studio/demos/next/components/dashboard.tsx","startTag":{"end":{"column":67,"line":69},"start":{"column":5,"line":69}}}
</code></pre>
[4] We’re only supporting a few versions of React at the moment for early focus: <a href="https://github.com/onlook-dev/onlook/tree/main/demos">https://github.com/onlook-dev/onlook/tree/main/demos</a><p>[5] <a href="https://github.com/onlook-dev/onlook/wiki/Roadmap">https://github.com/onlook-dev/onlook/wiki/Roadmap</a>