Navigation API теперь доступен в Baseline

Navigation API предоставляет возможность инициировать (программно запускать), перехватывать и управлять навигацией в браузере. Он также позволяет исследовать (traverse) сущности истории (history entries) приложения. Это улучшенный вариант предыдущих возможностей веб-платформы, связанных с навигацией, таких как History API и window.location , который решает их проблемы и специально предназначен для одностраничных приложений (single-page applications, SPA).

https://habr.com/ru/companies/timeweb/articles/1008840/

#javascript #js #web_api #webapi #navigation #history #навигация #история #timeweb_статьи #ti

Navigation API теперь доступен в Baseline

Navigation API предоставляет возможность инициировать (программно запускать), перехватывать и управлять навигацией в браузере. Он также позволяет исследовать (traverse) сущности истории (history...

Хабр

Web platform is a total mess

After years of work in a serious in-browser app, I found myself in a mood that "pure-web" is not designed for literally anything serious, beyond "place likes and swipes on endless stream of useless bullshit mistakenly called content " or "jump between read-only pieces of (now auto-generated) garbage and disinfo. What is not web designed for is the cross-platform no-installation applications development. Here is the simplest proof: even with all these advancements web API got over last […]

https://legends.house/web-platform-is-a-total-mess/

#WebAPI desideratum:

Intl.Segmenter(locale, { granularity: "linebreak-opportunity" })

Could be used to detect hyphenation support for a certain locale, experiment with justification, etc

https://github.com/tc39/proposal-intl-segmenter-v2/issues/12

`granularity: "syllable"` · Issue #12 · tc39/proposal-intl-segmenter-v2

It appears that the concept of a syllable is pretty universal across languages, yet in Intl.Segmenter, granularity goes from grapheme (basically letters) to word, with nothing more granular in betw...

GitHub

[Перевод] 10 веб-API, заменяющих многие библиотеки JavaScript

Современные браузеры тихо съедают экосистему JavaScript живьем. За последние несколько лет основные браузеры выпустили нативные веб-API, которые заменяют удивительно большое количество утилит, которые мы до сих пор устанавливаем по привычке. Тем не менее, многие разработчики продолжают использовать уже ненужные, но привычные библиотеки. Если зависимость всегда работала, она остается в стеке, даже если браузер уже умеет выполнять ту же работу. Такой подход обходится дороже, чем кажется. Каждый дополнительный пакет увеличивает вес сборки, затраты на обслуживание, частоту обновления версий и риск отказа от проекта в долгосрочной перспективе. Нативные API-интерфейсы стоят пользователям 0 КБ данных, работают глубоко в движке (часто вне основного потока (main thread)) и используют оптимизации, недоступные библиотекам.

https://habr.com/ru/articles/1015134/

#javascript #js #webapi #fetch #formdata #url #popover #clipboard #resizeobserver #viewtransitions

10 веб-API, заменяющих многие библиотеки JavaScript

Современные браузеры тихо съедают экосистему JavaScript живьем. За последние несколько лет основные браузеры выпустили нативные веб-API, которые заменяют удивительно большое количество утилит, которые...

Хабр
Get real-time alerts for Brokepoint! This video shows how to use the Notification Web API to surface errors from background jobs and streams so nothing slips by. A must-watch for devs who want smarter error handling. #WebAPI #Notifications #WebDev #JavaScript #ErrorHandling #DevTools #OpenWeb #PeerTube #English #ScienceTech
https://video.d20.social/videos/watch/6f48e2fc-b970-424b-8f77-ad2afecdc1cf
Notifications for Brokepoint

PeerTube

Event Loop для начинающих. Не так страшно, как вам рассказывали

JavaScript выполняет код в одном основном потоке. Это означает, что инструкции выполняются последовательно — одна за другой. Получил команду — выполнил. Но что делать интерпретатору, если он встречает код, который не может выполнить сразу? Например, обработчик события. Пока событие, допустим, клик на кнопку, не произошло, код внутри обработчика не выполнится. Такой код называют асинхронным. К асинхронным операциям относятся, например, таймеры ( setTimeout ), сетевые запросы или события интерфейса. Промисы ( Promise ) используются для обработки результатов таких операций. В такой ситуации на помощь интерпретатору JS приходит среда, в которой выполняется скрипт. Это может быть Node.js, мобильные среды или интерфейс, который предоставляет браузер — Web API (есть и другие). В отличие от JavaScript-движка, среда выполнения может использовать несколько потоков для обработки ввода-вывода, таймеров и сетевых операций. Если сравнить выполнение скрипта с выступлением оркестра, то дирижёром, который отвечает, чтобы каждая функция «отыграла свою партию» в нужный момент, можно назвать Event Loop. Event Loop — это механизм среды выполнения, который управляет порядком выполнения задач. Он координирует работу JavaScript-кода, обработку событий и другие процессы браузера. Вопреки расхожему мнению, работа этого механизма не так сложна, как его часто описывают. В этой статье, проповедуя Фреймановскую истину — «Если не можешь объяснить что-то простыми словами, то ты не понимаешь этого» — автор попытается (для себя и для других) описать работу Event Loop в браузере. В среде Node.js концепция похожа, но вместо Web API используются другие механизмы ввода-вывода.

https://habr.com/ru/articles/1011258/

#eventloop #webapi #новичкам

Event Loop для начинающих. Не так страшно, как вам рассказывали

JavaScript выполняет код в одном основном потоке. Это означает, что инструкции выполняются последовательно — одна за другой. Получил команду — выполнил. Но что делать интерпретатору, если он встречает...

Хабр

Holy shit weather.gov's api is relatively easy to use. Just `curl https://api.weather.gov/gridpoints/SGF/109,49/forecast`
(Although to get this URL you have to first curl https://api.weather.gov/points/$LAT,$LON where $LAT and $LON are your latitude and longitude)

#weather #webapi #NOAA #fuckdoge (seriously, this what I want my government to spent money on! I'm still salty)

Local-Only File Encryption with JavaScript.

I've been exploring the #WebCryptoAPI and I'm impressed!

When combined with the #FileSystemAPI, it offers a seemingly secure way to #encrypt and #store files directly on your device. Think #localstorage, but with #encryption!

I know #webapps can have #security vulnerabilities since the code is served over the web, so I've #OpenSourced my demo! You can check it out, and it should even work if #selfhosted on #GitHubPages.

Live Demo: https://dim.positive-intentions.com/?path=/story/usefs--encrypted-demo

Demo Code: https://github.com/positive-intentions/dim/blob/staging/src/stories/05-Hooks-useFS.stories.js

About the Dim framework:
https://positive-intentions.com/docs/category/dim

IMPORTANT NOTES (PLEASE READ!):
* This is NOT a product. It's for #testing and #demonstration purposes only.
* It has NOT been reviewed or audited. Do NOT use for sensitive data.
* The password encryption currently uses a hardcoded password. This is for demonstration, not security.
* This is NOT meant to replace robust solutions like #VeraCrypt. It's just a #proofofconcept to show what's possible with #browser #APIs.

#Encryption #Cryptography #JavaScript #Frontend #Privacy #Security #WebDevelopment #Coding #Developer #Tech #FOSS #OpenSource #GitHub #MastodonDev #Programming #WebStandards #FileSystem #WebAPI #ProofOfConcept

@storybook/core - Storybook

Mostly I've always used middleware to apply broad swaths of business logic to my ASP.NET Core operations, but found a nice use case for ActionFilterAttributes if you need to selectively implement business logic to specific controller items (https://learn.microsoft.com/en-us/aspnet/mvc/overview/older-versions/hands-on-labs/aspnet-mvc-4-custom-action-filters). However, they don't document how to do dependency injection on your filters well, here is the best practice I've found so far: https://edi.wang/post/2019/1/21/aspnet-core-dependency-injection-in-actionfilterattribute

#Dotnet #ASPCore #WebAPI

ASP.NET MVC 4 Custom Action Filters

ASP.NET MVC provides Action Filters for executing filtering logic either before or after an action method is called. Action Filters are custom attributes tha...