A Go / TypeScript meta-framework with first-class support for React, Solid, and Preact – built on Vite.
River is an innovative meta-framework designed specifically for Go and TypeScript, offering seamless integration with popular libraries like React, Solid, and Preact while leveraging the powerful capabilities of Vite. By stripping away the complexities associated with isomorphic JavaScript and cumbersome component hydration patterns, River provides developers with a refreshing approach to modern web development. Impressive performance, type-safety, and ease of integration are at the heart of River's philosophy, making it an exciting option for building full-stack applications without the usual overhead.
As a developer, the promise of achieving a high-performing, SEO-friendly application without the complexities of backend JavaScript is enticing. River's hybrid-SSR architecture cleverly maintains the essential elements of traditional full SSR while remaining straightforward, ensuring that you can build applications quickly and efficiently. With its commitment to offering a frictionless developer experience, River is poised to change the way developers approach modern web projects.
React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components
SolidJS is a declarative JavaScript library for building user interfaces, offering a reactive programming model for efficient updates. It stands out for its reactivity system that minimizes unnecessary re-renders and its small bundle size, making it a performant choice for developing lightweight and reactive web applications.
Vite is a build tool that aims to provide a faster and leaner development experience for modern web projects
TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.