Caution
Temporarily archived. My efforts have shifted focus to Bott for the time being. The plan is to use what I've learned here on a larger project in the somewhat distant future.
the onlyweb framework is a lightweight, server-side rendering framework for native WebComponents, built entirely on top of the Deno runtime. It was designed for the onlyweb.dev application with a focus on performance, transparency, and leveraging web standards.
The core philosophy is to provide a productive development experience without complex build steps, relying on Deno's built-in capabilities for TypeScript handling and tooling. It aims to stay close to the platform, using standard browser APIs wherever possible.
- Server-Side Rendering: Optimized for fast initial loads and SEO using native Web Components.
- Buildless Development: Leverages Deno's runtime for TypeScript, formatting, linting, and testing, eliminating the need for a separate build pipeline.
- Zero Runtime Dependencies: Relies only on the Deno standard library and native browser APIs.
- Standard CSS: Encourages the use of standard CSS within Shadow DOM or shared style fragments, avoiding the need for pre-processors. Includes a basic CSS reset scoped to components by default.
- Declarative Rendering: Offers a familiar component model (inspired by React/Lit) for defining UI based on attributes, but without a virtual DOM.
- Simple Templating: Provides
html
tagged template literals for both backend and frontend rendering. - Robust Logging: Includes structured logging utilities (
@onlyweb/shared
) suitable for metrics and debugging. - Lightweight i18n: Basic internationalization support via the backend
createInliner
. - Streamlined PWA Support: Helpers for service worker registration.
- User Agent Checking: Utilities for checking browser capabilities when feature detection isn't sufficient.
(Note: Advanced client-side state management beyond attributes is planned for post-alpha releases).
brew bundle
A basic understanding of native web development. MDN has a great introduction to the web that you can follow.
- Basic Tutorial
- onlyweb.dev (The application this framework was initially built for)