Remix.run Logo
yasserf 14 hours ago

I have been working on https://pikku.dev

The goal is to provide a fully typed nodeJS framework that allows you to write a typescript function once and then decide whether to wire it up to http, websocket, queues, scheduled tasks, mcp server, cli and other interactions.

You can switch between serverless and server deployments without any refactoring / completely agnostic to whatever platform your running it on

It also provides services, permissions, auth, eventhub, advanced tree shaking, middleware, schema generation and validation and more

The way it works is by scanning your project via the typescript compiler and generating a bootstrap file that imports everything you need (hence tree shaking), and allows you to filter down your backend to only the endpoints needed (great to pluck out individual entry points for serverless). It also generates types fetch, rpc, websocket and queue client files. Types is pretty much most of what pikku is about.

Think honoJS and nestJS sort of combined together and also decided to support most server standards / not just http.

Website needs love, currently working on a release to support CLI support and full tree shaking.

epolanski 14 hours ago | parent [-]

I think you need to frame your product better.

It clearly supports different runtimes than node with different capabilities and limitations.

It seems more of a runtime-agnostic web server.

yasserf 3 hours ago | parent [-]

Thank you for the feedback!

I agree framing pikku has been a pretty hard challenge for me.

It supports different runtimes in the sense of deno / bun or custom nodeJS runtimes in the cloud, but ultimately relies purely on typescript / a JavaScript compatible backend.

It’s less of a webserver and more of a lightweight framework though, since it also supports CLIs or Frontend SDKs / isn’t tied to running an actual server.