HN user

amcaskill

343 karma
Posts16
Comments96
View on HN

I work on a dashboarding / BI solution that is also built around markdown and clickhouse. www.evidence.dev

We moved to stripe's Markdoc variant for the component syntax last year and have been really happy with it. Models are good at writing it, people are good at reviewing it.

Here's an area chart that would issue a SQL query for weekly revenue totals:

``` {% area_chart data="my_table" x="date" y="sum(revenue)" date_grain="week" /%} ```

This looks cool, I’ll definitely try it out.

The best (for me) of these that I’ve tried so far is conductor.build

They have a different UI orientation, and it’s more locked into Claude code, but it might be good inspiration for your future plans. They get the git worktree setup and teardown and managing dev servers part of it right IMO.

If you are a data analyst interested in making web apps, you might be interested in my OSS project, Evidence, which is a Static Site Generator for building reports and data apps with SQL and markdown.

Repo (3K stars): https://github.com/evidence-dev/evidence

Previous discussions on HN:

https://news.ycombinator.com/item?id=28304781 - 91 comments

https://news.ycombinator.com/item?id=35645464 - 97 comments

I think performance and cost are the big motivators here.

I work on a web framework for building data apps like reports and dashboards, and we use duckDB’s WASM runtime for interactions (e.g when a user changes a date range filter). It’s really fast, and you don’t spend snowflake credits.

Thanks for the kind words.

That’s good feedback on the docs. The tool has evolved pretty dramatically from where it started and we should revisit those diagrams.

Evidence is a static site generator.

Queries against your sources happen at build time and save to parquet.

Queries against the built in DuckDB web assembly instance happen at runtime.

Sources (snowflake, Postgres, csv files etc.) run at build time.

Pages in evidence are defined as markdown files. You write markdown, components, and code fences.

SQL code fences in pages run in the built in duck db wasm instance which can query across the results from all of your sources. These queries run in the client. We call this feature universal SQL, and it’s quite new.

You can read about universal SQL here if it’s of interest. https://evidence.dev/blog/why-we-built-usql/

You can template those SQL queries to accept input from input components. This enables you to build extremely performant client side interactions.

Under the hood, Evidence is built on svelte and compiles to a svelte kit application, and you can extend your project with custom svelte components.

Hope that’s helpful — we’re very active in our slack if you ever want to say hi!

One of the founders of Evidence here. Thanks the kind words Mike - that means a lot coming from you.

I think that distinction is right -- we are focused on making a framework that is easy to use with a data analyst skill set, which generally means as little javascript as possible.

As an example, the way you program client-side interactions in Evidence is by templating SQL which we run in duckDB web assembly, rather than by writing javascript.

Evidence is also open source, for anyone who's interested.

Repo: https://github.com/evidence-dev/evidence

Previous discussions on HN:

https://news.ycombinator.com/item?id=28304781 - 91 comments

https://news.ycombinator.com/item?id=35645464 - 97 comments

I'm quite excited about this, and would also love to have it distributed as an NPM package.

I work on an OSS web framework for reporting/ decision support applications (https://github.com/evidence-dev/evidence), and we use WASM duckDB as our query engine. Several folks have asked for PRQL support, and this looks like it could be a pretty seamless way to add it.

Out of interest, what exactly do people use Grafana for? Is it always monitoring infrastructure/ systems or is it more general purpose than that? What is special about it?

I come previously ran an analytics team and I work on an open source BI tool (https://github.com/evidence-dev/evidence) but I have never actually used grafana or come across it when talking to other "business analytics" folks. Everyone in my world is just using tableau or looker or jupyter notebooks.

This is the right mindset for sure. Most of the time the initial question is very loosely defined, but actually having these conversations with the people who "want data", and helping them structure their thinking is also a hugely rewarding part of working in data and analytics, and will help you advance in your career.

It can be easy to have a cynical view of what people are asking for, but in my experience there is often real value you can uncover.

One thing which helped me a lot is having a decent understanding of accounting and finance. A fun, and fairly quick, way to develop that is by taking a course on financial modelling (in excel). Modelling a business in a spreadsheet is a lot of fun, and it helps you build good intuition on the underlying "physics" of how a business makes money.

I helped build the analytics group at a PE fund, and this really fits with my experience.

Good decision support is where most of the value is, and it’s about building things that draw conclusions, not just throwing the data over the fence with 50 filters and expecting the end consumer to do the actual analysis.

I now work on an open source, code-based BI tool called Evidence, which incorporates a lot of these ideas, and might be of interest to people in this thread.

https://github.com/evidence-dev/evidence

Previous discussions on HN:

https://news.ycombinator.com/item?id=28304781 - 91 comments

https://news.ycombinator.com/item?id=35645464 - 97 comments

Thank you for mentioning it!

For anyone who is interested in our cloud service, it's an easy way to put your project online, keep it up to date with your data, and place it behind access control.

For many organizations, hosting Evidence in their own infrastructure is easy enough, but if you don't want to manage that, we are happy to manage it for you.

It is not free (that's how we pay the salaries), but pricing is available here:

https://evidence.dev/cloud

Thank you!

I hear that. We're making a lot of progress on reducing the amount of sql you need to write, keeping it DRY etc. Making the dev experience really buttery and high leverage is definitely a priority.

Here are a few of the things we're working on in that regard:

1. Making our components issue their own queries so that you don't need to write full sql expressions, just fragments when you're defining the chart you want.

2. Improving intellisense -- right now you get "slash commands" and snippets in our vscode extension to invoke components (which are really sweet), but we're aiming to get to a full intellisense type of experience.

3. Supporting external metrics layers where it makes sense. We've got some users using Cube, we're interested in Malloy, and the dbt semantic layer, those types of things.

One of our team members is very keen on building something he calls "Evidence studio", sort of a wsywig you could invoke during development for generating basic queries, setting up charts etc. that syncs the components into their text representation. That'd be further off though :)

If you are interested in this, but would prefer to define reports with a markup language (and SQL), I work on an open source code-based BI tool called Evidence, which might be of interest to you.

It's effectively a static site generator aimed at building automated reports and analysis.

https://github.com/evidence-dev/evidence

Previous discussions on HN:

https://news.ycombinator.com/item?id=28304781 - 91 comments

https://news.ycombinator.com/item?id=35645464 - 97 comments