Sunday, May 26, 2024

Show HN: I Built an Invoicing App https://ift.tt/tfYVyhG

Show HN: I Built an Invoicing App It's probably not the most interesting tool out there, but this is my first time shipping a product solo and I'm so proud https://koteshen.com May 27, 2024 at 02:44AM

Show HN: I generated API documentation for all Java packages https://ift.tt/SltEqbB

Show HN: I generated API documentation for all Java packages Hi HN! I'm excited to share a project I've been working on for the past year: Docland. It is an API documentation browser that generates documentation on demand (through compilation, not LLMs) for Java packages. Instead of relying on Javadoc, the built-in doc generator, I created the engine from scratch to give the documentations a modern look, build fast search indexes, and enable link resolution to other packages. I built Docland because I constantly found it frustrating to locate and view API definitions when programming. You'd have to Google the function/class name, skip all the SEO articles, find the page you want, yet the documentation might be poorly formatted or does not support searching. So I thought it would be really cool to create a documentation site dedicated for programming languages and libraries, so that you can find the docs all in one place with a uniform look. Docland currently only supports Java, but more programming languages can be supported thanks to its modular architecture. Please try it out and let me know what you think! Also, the process of building Docland was extremely fun and challenging. I'm happy to share about that too. Thank you! Martin https://docland.io May 26, 2024 at 06:05PM

Saturday, May 25, 2024

Show HN: Uiino – Designing User Flows in Plain Text https://ift.tt/K7yGzPB

Show HN: Uiino – Designing User Flows in Plain Text hi, i'm sanju, the creator of uiino.com. been there, done that with sticky notes for user stories. fun for brainstorming, but a nightmare to manage. i had to constantly move them around, keep track of changes, and explain my messy notes - it was frustrating! that's why i created uiino. it makes it easy to create user flows with just plain text, anywhere you can type. if you get stuck, our ai can even help you build a story map from your app idea. uiino keeps things clear and simple. we use tags to make it easy for everyone to understand. need feedback? you can add comments directly to the map. and if you need to move things around, it's super easy! we use uiino ourselves to build better products. to try ditching the sticky notes and see how clear user stories can help. uiino is free to use forever, but we're just getting started. we're working on integrations with figma to sync your app design flows, copywriting, translation, and collaborations. we're also working on more cool features. if you have feedback to make it even better, i'm all ears! try → https://story.uiino.com | docs → https://uiino.com/docs | about us → https://uiino.com/story https://www.uiino.com May 25, 2024 at 09:15PM

Show HN: A few small games not only for kids (made with my programming language) https://ift.tt/9AZaSOV

Show HN: A few small games not only for kids (made with my programming language) https://ift.tt/0Vb2yDr May 25, 2024 at 11:18PM

Show HN: I built obsidian plugin to create notes from BibTeX https://ift.tt/mG0IirB

Show HN: I built obsidian plugin to create notes from BibTeX With this plugin you can create literature notes from BibTeX entries, display formatted reference lists, and instantly generate citations. https://ift.tt/8e2Esvu May 24, 2024 at 01:48AM

Friday, May 24, 2024

Show HN: ServerlessMaps – Host your own maps in the cloud https://ift.tt/sRgHp1e

Show HN: ServerlessMaps – Host your own maps in the cloud Have a look at the website with an example map, https://ift.tt/Poq13up , or read the accompanying blog post https://ift.tt/eQj3IJE https://ift.tt/5tsAg8I May 24, 2024 at 01:49PM

Show HN: A faster way to switch LLM models https://ift.tt/wbNCprJ

Show HN: A faster way to switch LLM models Really excited to release our universal model router for LLM models. We monitor usage across all your LLM models and now make it even easier to switch between them, no more time rebuilding your app when a new model is released. https://twitter.com/getPropsAI/status/1794085232951574529 May 25, 2024 at 01:01AM

Show HN: Spot – Simple, cross-platform, reactive desktop GUI toolkit for Go https://ift.tt/EhgLWCd

Show HN: Spot – Simple, cross-platform, reactive desktop GUI toolkit for Go Hi HN, I’m excited to share Spot, a simple, cross-platform, React-like GUI library for Go. It is just a few days old and has lots of missing features but I'm happy with the results so far, and looking for some design feedback. Spot is designed to be easy to use and provide a consistent API across different platforms (mainly Mac & Linux). It’s inspired by React, but written in Go, aiming to combine the best of both worlds: the easy tooling & performance of Go with a modern, reactive approach to UI development. Key features: - Cross-platform: Leveraging FLTK[1] & Cocoa[2], Spot works on Mac, Linux, and the BSDs with plans for native Windows support in the future. - Reactive UI: Adopts a React-like model for building UIs, making it intuitive for those familiar with reactive frameworks. - Traditional, native widget set: Utilizes native widgets where available to provide a more traditional look and feel. Why I built it: I was searching for a cross-platform GUI toolkit for Go that had a more traditional appearance, and none of the existing options quite met my needs. I then started playing with Gocoa and go-fltk and suddenly I worked on an experiment to see how challenging it would be to build something like React in Go, and it kinda evolved into Spot. ¯\_(ツ)_/¯ In 2024, is there a still place for classic desktop GUIs—even with a modern spin? I’d love to hear your thoughts, feedback, and any suggestions for improvement. Also, contributions are very welcome. Thank you for checking it out! [1] https://ift.tt/7mwIoAO [2] https://ift.tt/zBKFqfL https://ift.tt/gSIo3Dq May 25, 2024 at 12:49AM

Thursday, May 23, 2024

Show HN: Excel to Python Compiler https://ift.tt/x7VTybj

Show HN: Excel to Python Compiler We (me and @aarondia) built a tool to help you turn psuedo-software Excel files into real-software Python. Ideally, Pyoneer helps you automate your manual Excel processes. You can try it today here: https://pyoneer.ai . How it works: 1. You upload an Excel file 2. We statically parse the Excel file and build a dependency graph of all the cells, tables, formulas, and pivots. 3. We do a graph traversal, and translate nodes as we hit them. We use OpenAI APIs to translate formulas. There’s a bunch of extra work here — because even with the best prompt engineering a fella like me can do, OpenAI sucks at translating formulas (primarily because it doesn’t know what datatypes its dealing with). We augment this translation with a mapping from ranges to variable names and types, which in our experience can improve the percentage of correctly translatable formulas by about 5x. 4. We generate test cases for our translations as well, to make sure the Python process matches your Excel process. 5. We give you back a Jupyter notebook that contains the code we generated. If there are pieces of the Excel we can’t translate successfully (complex formulas, or pivot tables currently), then we leave them as a TODO in the code. This makes it easy for you to hop in and continue finishing the script. Who is this for: Developers who know Python, primarily! Pyoneer might be useful if: 1. You’ve got an Excel file you’re looking to move to Python (usually for speed, size, or maintenance reasons). 2. There’s enough logic contained in the notebook that it’s going to be a hassle for you to just rewrite it from scratch. 3. Or you don’t know the logic that is in the Excel workbook well since you didn’t write it in the first place :) Post translation, even if Pyoneer doesn't nail it perfectly or translate all the formulas, you'll be able to pop into the notebook and continue cleaning up the TODOs / finish writing the formulas. What the Alpha launch supports: Launched early! Currently we’re focused on supporting: 1. Any number of sheets, with any reference structure between them. 2. Cells that translate as variables directly. We’ll translate the formulas to Python code that has the same result, or else we’ll generate a TODO letting you know we failed translating this cell. 3. Tables that translate as Pandas dataframes. We support at most one table per sheet, at the tables must be contigious. If the formulas in a column are consistent, then we will try and translate this as a single pandas statement. We do not support: pivot tables or complex formulas. When we fail to translate these, we generate TODO statements. We also don’t support graphs or macros - and you won’t see these reflected in the output at all currently. Why we built this: We did YCS20 and built an open source tool called Mito( https://trymito.io ). It’s been a good journey since then - we’ve scaled revenue and to over 2k Github stars ( https://ift.tt/SpaRAyW ). But fundamentally, Mito is a tool that’s useful for Excel users who wanted to start writing Python code more effectively. We wanted to take another stab at the Excel -> Python pain point that was more developer focused - that helped developers that have to translate Excel files into Python do this much more quickly. Hence, Pyoneer! I’ll be in the comments today if you’ve got feedback, criticism, questions, or comments. https://ift.tt/gyIrhXO May 23, 2024 at 11:10PM

Show HN: We open sourced our entire text-to-SQL product https://ift.tt/2fhNE31

Show HN: We open sourced our entire text-to-SQL product Long story short: We (Dataherald) just open-sourced our entire codebase, including the core engine, the clients that interact with it and the backend application layer for authentication and RBAC. You can now use the full solution to build text-to-SQL into your product. The Problem: modern LLMs write syntactically correct SQL, but they struggle with real-world relational data. This is because real world data and schema is messy, natural language can often be ambiguous and LLMs are not trained on your specific dataset. Solution: The core NL-to-SQL engine in Dataherald is an LLM based agent which uses Chain of Thought (CoT) reasoning and a number of different tools to generate high accuracy SQL from a given user prompt. The engine achieves this by: - Collecting context at configuration from the database and sources such as data dictionaries and unstructured documents which are stored in a data store or a vector DB and injected if relevant - Allowing users to upload sample NL <> SQL pairs (golden SQL) which can be used in few shot prompting or to fine-tune an NL-to-SQL LLM for that specific dataset - Executing the SQL against the DB to get a few sample rows and recover from errors - Using an evaluator to assign a confidence score to the generated SQL The repo includes four services https://ift.tt/UBjKZG4 : 1- Engine: The core service which includes the LLM agent, vector stores and DB connectors. 2- Admin Console: a NextJS front-end for configuring the engine and observability. 3- Enterprise Backend: Wraps the core engine, adding authentication, caching, and APIs for the frontend. 4- Slackbot: Integrate Dataherald directly into your Slack workflow for on-the-fly data exploration. Would love to hear from the community on building natural language interfaces to relational data. Anyone live in production without a human in the loop? Thoughts on how to improve performance without spending weeks on model training? https://ift.tt/2R6fYtG May 23, 2024 at 09:20PM

Wednesday, May 22, 2024

Show HN: Route your prompts to the best LLM https://ift.tt/l26p35t

Show HN: Route your prompts to the best LLM Hey HN, we've just finished building a dynamic router for LLMs, which takes each prompt and sends it to the most appropriate model and provider. We'd love to know what you think! Here is a quick(ish) screen-recroding explaining how it works: https://youtu.be/ZpY6SIkBosE Best results when training a custom router on your own prompt data: https://youtu.be/9JYqNbIEac0 The router balances user preferences for quality, speed and cost. The end result is higher quality and faster LLM responses at lower cost. The quality for each candidate LLM is predicted ahead of time using a neural scoring function, which is a BERT-like architecture conditioned on the prompt and a latent representation of the LLM being scored. The different LLMs are queried across the batch dimension, with the neural scoring architecture taking a single latent representation of the LLM as input per forward pass. This makes the scoring function very modular to query for different LLM combinations. It is trained in a supervised manner on several open LLM datasets, using GPT4 as a judge. The cost and speed data is taken from our live benchmarks, updated every few hours across all continents. The final "loss function" is a linear combination of quality, cost, inter-token-latency and time-to-first-token, with the user effectively scaling the weighting factors of this linear combination. Smaller LLMs are often good enough for simple prompts, but knowing exactly how and when they might break is difficult. Simple perturbations of the phrasing can cause smaller LLMs to fail catastrophically, making them hard to rely on. For example, Gemma-7B converts numbers to strings and returns the "largest" string when asking for the "largest" number in a set, but works fine when asking for the "highest" or "maximum". The router is able to learn these quirky distributions, and ensure that the smaller, cheaper and faster LLMs are only used when there is high confidence that they will get the answer correct. Pricing-wise, we charge the same rates as the backend providers we route to, without taking any margins. We also give $50 in free credits to all new signups. The router can be used off-the-shelf, or it can be trained directly on your own data for improved performance. What do people think? Could this be useful? Feedback of all kinds is welcome! https://ift.tt/c07Iov8 May 22, 2024 at 08:37PM

Show HN: B-field, a novel probabilistic key-value data structure (`rust-bfield`) https://ift.tt/vWqU4CV

Show HN: B-field, a novel probabilistic key-value data structure (`rust-bfield`) `rust-bfield` is a Rust implementation of our novel "B-field" data structure, which functions like a Bloom filter for key-value lookups instead of set membership queries. The B-field allows you to compactly store data using only a few bytes per key-value pair. We've successfully utilized it in genomics to associate billions of "k-mers" with taxonomic identifiers while maintaining an efficient memory footprint. But the data structure is also useful beyond computational biology, particularly where you have large unique key domains and constrained value ranges. Available under an Apache 2 license. We hope it proves useful, and we're happy to answer any questions! https://ift.tt/8SePW0N May 22, 2024 at 11:23PM

Tuesday, May 21, 2024

Show HN: Adblock for Podcasts https://ift.tt/a1wUKPp

Show HN: Adblock for Podcasts This is a small app that achieves surprisingly good podcast adblocking. It transcribes the podcast, identifies ad segments in the transcript, then creates a new version of the podcast without the ads. https://ift.tt/fapLz1h May 22, 2024 at 05:31AM

Show HN: An online billboard I built in 2 weeks https://ift.tt/JtWMOdB

Show HN: An online billboard I built in 2 weeks Never built something this quick from the ground up! https://ift.tt/TgIMz5Z May 22, 2024 at 01:19AM

Show HN: I recreated Jeffery Ventrella's "Particle Life" https://ift.tt/LHkFNJ3

Show HN: I recreated Jeffery Ventrella's "Particle Life" This weekend's coding session was dedicated to recreating Jeffery Ventrella's "Particle Life". As you can imagine, I had a lot of fun with it. I recently saw this here on Hacker News and found it strange that I’d never come across it before. Source code: https://ift.tt/due2GV3 The color palette is by Alex Cristache. https://twitter.com/AlexCristache/status/1791122643816431930 https://ift.tt/v2ehfCV May 18, 2024 at 01:47AM

Monday, May 20, 2024

Show HN: Optigraph – optimum graph network generator https://ift.tt/jQlnT4y

Show HN: Optigraph – optimum graph network generator I've created a tool that helps plan graph networks for the best possible connections between nodes. The idea is for it to be used as a kind of underground system planner. I am still working on improving the algorithms it uses, but please consider checking it out for new ideas/bug catching. https://ift.tt/kgVHd17 May 19, 2024 at 03:00PM

Show HN: SQLFrame – I ran PySpark without Spark on a SQL database https://ift.tt/bDHr6M5

Show HN: SQLFrame – I ran PySpark without Spark on a SQL database Recently I open-sourced SQLFrame, a DataFrame library that implements the PySpark DataFrame API but removes Spark as a dependency. It does this by generating the corresponding SQL for the DataFrame operations using SQLGlot. Since the output is SQL this also means that the PySpark DataFrame API can now be used directly against other databases without the Spark middleman. I built this because of two common problems I have faced in my career: 1. I prefer to write complex pipelines in PySpark but they can be hard to read for SQL-proficient co-workers. Therefore I find myself in a tradeoff between maintainability and accessibility. 2. I really enjoy using the PySpark DataFrame API but not every project requires Spark and therefore I'm not able to use the DataFrame library I am most proficient in. The library currently focuses on transformation pipelines (reading from and writing to tables) and data analysis as key use cases. It does offer some ability to read from files directly but they must be small although this can be improved over time if there is demand for it. SQLFrame currently supports BigQuery, DuckDB, and Postgres with Clickhouse, Redshift, Snowflake, Spark, and Trino in development or planned. You can use the "Standalone" session to test running against any engine supported by SQLGlot but there could be issues with more advanced functions that will be resolved once officially supported by SQLFrame. Blog post for more details: https://ift.tt/H6hnLtG... Would love to answer any questions or hear any feedback you may have! https://ift.tt/nW5XYBH May 21, 2024 at 06:39AM

Show HN: Recall Memory – Your Personal Local Time Machine for Mac https://ift.tt/uOVi7J0

Show HN: Recall Memory – Your Personal Local Time Machine for Mac Recall Memory is a free Sandboxed Mac App which let's you scroll through time and allows you to "Recall" what you were doing earlier. Recall works by capturing the active window every second and only saves screenshots with significant changes. Making it easy to scroll through what you were doing earlier. All data is processed and always stored locally. https://ift.tt/R1doNTG May 21, 2024 at 05:18AM

Show HN: Schedule SSH Execution of Bash/PowerShell/SQL Scripts https://ift.tt/ptKQrJx

Show HN: Schedule SSH Execution of Bash/PowerShell/SQL Scripts https://ctfreak.com May 21, 2024 at 02:04AM

Sunday, May 19, 2024

Show HN: DeLorean – Super Performant IPv4->IPv6 Reverse Proxy in Golang https://ift.tt/iZGlHWV

Show HN: DeLorean – Super Performant IPv4->IPv6 Reverse Proxy in Golang https://ift.tt/iGsgAnU May 20, 2024 at 08:25AM