Skip to content
This repository was archived by the owner on Aug 28, 2025. It is now read-only.

daniellacosse-code/onlyweb

Repository files navigation

@onlyweb ✨👁✨

status codecov Maintainability JSR Scope

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.

overview

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.

features

  • 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).

prerequisites

brew bundle

A basic understanding of native web development. MDN has a great introduction to the web that you can follow.

examples

About

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors 5