I want to share small library which i made.
While I developing my log viewer (https://github.com/iamtelescope/telescope) I needed a way for users to filter the data in my UI. Something like `status = 500 and level = "error"`. And on the backend i need to convert it into the SQL. And by default I don't want to give users raw SQL (because of security concerns).
So I create simple parser for this.
Later, I have another project and I needed exactly same thing, but for PostgreSQL. And later for my CLI stuff. So i decided to extract this telescope thing in a standalone library/project and call it FlyQL.
FlyQL is tiny filter language. It has implementation in three languages for today: Python, Golang and JavaScript. And it has support for 3 SQL dialects: ClickHouse, StarRocks and PostgreSQL.
Also, there are Vue3 editor component, which allows to easily use it in your own UI (if you are using vue)
Would love to hear any feedback.
MIT Licensed.
GitHub: https://github.com/iamtelescope/flyql
Playground: https://flyql.dev/playground/
Documentation: https://docs.flyql.dev/