Feature Request: Add Support for Hindi Language (#1055)

* Fixed typos in the README

* feat(feature-requests): Add support for Hindi language

This commit adds a feature request for supporting the Hindi language, which would enhance accessibility for Hindi-speaking users. It includes translation, language selection options, and testing for a seamless user experience.

Closes #1054

* fix(docs): Correct grammar errors in README.md

Addressed grammar mistakes that were identified in the previous pull request. This commit ensures the README.md is free from errors and provides clear and accurate information.

Closes #1053
pull/1064/head
Sundaram Sharma 1 year ago committed by GitHub
parent ed31057285
commit 6ee1e6b5aa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

File diff suppressed because it is too large Load Diff

@ -1,6 +1,6 @@
<img alt="Snabbdom" src="readme-title.svg" width="356px">
A virtual DOM library with focus on simplicity, modularity, powerful features
A virtual DOM library with a focus on simplicity, modularity, powerful features
and performance.
---
@ -18,24 +18,23 @@ their great cross-browser testing tools.
---
English | [简体中文](./README-zh_CN.md)
English | [简体中文](./README-zh_CN.md)
## Introduction
Virtual DOM is awesome. It allows us to express our application's view
as a function of its state. But existing solutions were way way too
as a function of its state. But existing solutions were way too
bloated, too slow, lacked features, had an API biased towards OOP
and/or lacked features I needed.
, and/or lacked features I needed.
Snabbdom consists of an extremely simple, performant and extensible
Snabbdom consists of an extremely simple, performant, and extensible
core that is only ≈ 200 SLOC. It offers a modular architecture with
rich functionality for extensions through custom modules. To keep the
core simple, all non-essential functionality is delegated to modules.
You can mold Snabbdom into whatever you desire! Pick, choose and
You can mold Snabbdom into whatever you desire! Pick, choose, and
customize the functionality you want. Alternatively you can just use
the default extensions and get a virtual DOM library with high
performance, small size and all the features listed below.
performance, small size, and all the features listed below.
## Features
@ -222,8 +221,8 @@ Of course, then there is still a single comment node at the mount point.
### `h`
It is recommended that you use `h` to create vnodes. It accepts a
tag/selector as a string, an optional data object and an optional string or
array of children.
tag/selector as a string, an optional data object, and an optional string or
an array of children.
```mjs
import { h } from "snabbdom";
@ -387,7 +386,7 @@ animate the disappearance of the removed element's children.
### Creating modules
Modules works by registering global listeners for [hooks](#hooks). A module is simply a dictionary mapping hook names to functions.
Modules work by registering global listeners for [hooks](#hooks). A module is simply a dictionary mapping hook names to functions.
```mjs
const myModule = {
@ -412,7 +411,7 @@ This describes the core modules. All modules are optional. JSX examples assume y
The class module provides an easy way to dynamically toggle classes on
elements. It expects an object in the `class` data property. The
object should map class names to booleans that indicates whether or
object should map class names to booleans that indicate whether or
not the class should stay or go on the vnode.
```mjs
@ -615,7 +614,7 @@ event listeners.
You can attach a function to an event on a vnode by supplying an
object at `on` with a property corresponding to the name of the event
you want to listen to. The function will be called when the event
happens and will be passed the event object that belongs to it.
happens and will be passed to the event object that belongs to it.
```mjs
function clickHandler(ev) {
@ -728,7 +727,7 @@ arguments.
`thunk(selector, key, renderFn, [stateArguments])`
The `renderFn` is invoked only if the `renderFn` is changed or `[stateArguments]` array length or it's elements are changed.
The `renderFn` is invoked only if the `renderFn` is changed or `[stateArguments]` array length or its elements are changed.
The `key` is optional. It should be supplied when the `selector` is
not unique among the thunks siblings. This ensures that the thunk is
@ -855,7 +854,7 @@ const fragment = (
### sel : String
The `.sel` property of a virtual node is the CSS selector passed to
[`h()`](#snabbdomh) during creation. For example: `h('div#container', {}, [...])` will create a a virtual node which has `div#container` as
[`h()`](#snabbdomh) during creation. For example: `h('div#container', {}, [...])` will create a virtual node that has `div#container` as
its `.sel` property.
### data : Object
@ -945,7 +944,7 @@ Here are some approaches to building applications with Snabbdom.
- [functional-frontend-architecture](https://github.com/paldepind/functional-frontend-architecture)
a repository containing several example applications that
demonstrates an architecture that uses Snabbdom.
demonstrate an architecture that uses Snabbdom.
- [Cycle.js](https://cycle.js.org/)
"A functional and reactive JavaScript framework for cleaner code"
uses Snabbdom
@ -960,7 +959,7 @@ Here are some approaches to building applications with Snabbdom.
"A reactive frontend framework for JavaScript"
uses Snabbdom
- [Tung](https://github.com/Reon90/tung)
A JavaScript library for rendering html. Tung helps to divide html and JavaScript development.
A JavaScript library for rendering HTML. Tung helps to divide HTML and JavaScript development.
- [sprotty](https://github.com/theia-ide/sprotty) - "A web-based diagramming framework" uses Snabbdom.
- [Mark Text](https://github.com/marktext/marktext) - "Realtime preview Markdown Editor" build on Snabbdom.
- [puddles](https://github.com/flintinatux/puddles) -
@ -981,7 +980,7 @@ Uncaught NotFoundError: Failed to execute 'insertBefore' on 'Node':
The node before which the new node is to be inserted is not a child of this node.
```
The reason for this error is reusing of vnodes between patches (see code example), snabbdom stores actual dom nodes inside the virtual dom nodes passed to it as performance improvement, so reusing nodes between patches is not supported.
The reason for this error is the reusing of vnodes between patches (see code example), snabbdom stores actual dom nodes inside the virtual dom nodes passed to it as performance improvement, so reusing nodes between patches is not supported.
```mjs
const sharedNode = h("div", {}, "Selected");
@ -1023,4 +1022,4 @@ const vnode1 = h("div", [
## Opportunity for community feedback
Pull requests that the community may care to provide feedback on should be
merged after such opportunity of a few days was provided.
merged after such an opportunity of a few days was provided.

Loading…
Cancel
Save