Skip to main content

Overview

Sonnet JS is a ligtweight, fast and easy to use JavaScript framework for building modern web applications. It is more or less a way to structure your Vanilla JS code in a way that is more maintainable and scalable. It is not a full-fledged framework like Angular or React, but it provides a solid foundation for building modern web applications. The goal of Sonnet JS is to provide a simple and easy to use framework that allows you to build modern web applications without having to learn a lot of new concepts or technologies.

Features

  • Lightweight: Sonnet JS is a lightweight framework that is designed to be fast and efficient. It is built on top of modern web technologies and is designed to be as small and fast as possible.

  • Easy to use: Sonnet JS is designed to be simple and easy to use. It provides a simple and intuitive API that allows you to build modern web applications without having to learn a lot of new concepts or technologies. If you know JavaScript, you can start using Sonnet JS right away.

  • Modular and extensible: Sonnet JS is designed to be modular and extensible. It provides a solid foundation for building modern web applications, but it also allows you to easily add new features and functionality to your application. You can easily create custom components, directives, filters, and services to extend the functionality of Sonnet JS.

  • Fast and efficient: Sonnet JS is designed to be fast and efficient. It is built on top of modern web technologies and is designed to be as small and fast as possible. It uses a virtual DOM to efficiently update the UI and minimize the number of DOM manipulations.

Modules

Sonnet JS is divided into several modules that provide different features and functionality. Here are some of the core modules of Sonnet JS:

  • Core: The core module provides the basic functionality of Sonnet JS, such as creating components, directives, filters, and services.

  • Router: The router module provides a simple and easy-to-use router that allows you to create single-page applications with multiple views.

  • Store: The store module provides a simple and easy-to-use state management solution that allows you to manage the state of your application in a predictable and scalable way.

Motivation

The motivation behind Sonnet JS is to provide a simple and easy-to-use framework for building modern web applications. There are many JavaScript frameworks and libraries available today, but most of them are either too complex or too opinionated. Sonnet JS aims to strike a balance between simplicity and flexibility, providing a solid foundation for building modern web applications without imposing too many constraints on how you build your application.

Philosophy

The philosophy behind Sonnet JS is to provide a simple and easy-to-use framework that allows you to build modern web applications without having to learn a lot of new concepts or technologies. Sonnet JS is developed with the following principles in mind:

  • Native JavaScript: Sonnet JS is built on top of native JavaScript and modern web technologies. It does not require a buildtime or runtime compiler, and it does not introduce any new syntax or concepts. If you know JavaScript, you can start using Sonnet JS right away.

  • Separation of concerns: Sonnet JS encourages a clear separation of concerns between the different parts of your application. It provides a clear separation between the UI, the data, and the logic of your application, making it easier to reason about and maintain your code.

  • Clean and simple Architecture: Sonnet JS provides a clean and simple architecture that allows you to build modern web applications in a scalable and maintainable way. It makes it easy to go through the codebase and understand how different parts of your application are connected.

  • Modern Concepts: Sonnet JS is developed by keeping modern web development concepts in mind. It provides features like routing, component-based architecture, and server-side rendering out of the box.