Pull to refresh
8K+
2
Дмитрий Дин@dm_din

Евангелист Svelte и Дзена-Python

12
Rating
3
Subscribers
Send message

Сюда можно было бы тогда добавить ещё и Cap'n Web, и Hono RPC и Svelte Remote Functions. На момент создания Chord их еще либо не было, либо они были не так популярны. А рамках доклада и статьи интереснее было расписать как мы сами к этому пришли, и сам подход. Пусть появился и еще один, но зато свой родной велосипед)

Такая нотация у SvelteKit. +page, +server, +layout и производные от них - заразервированные под разные задачи

Спасибо за замечание. Генерация кода действительно хорошо работает, когда есть автодокументирование REST и микросервисы. Например в связке FastAPI с openapi-typescript или аналогичным. Однако в нашем случае REST не подходил и весь проект представляет собой монолит на метафреймворке. В таком случае выгоднее дружить через контракты на основе типов

Привет! Спасибо за отличный вопрос. В Chord есть механизм внедрения контекста в класс. Он образуется в middleware, либо можно писать вручную в эндпоинте. За счет этого мы можем получить текущую сессию пользователя и всю необходимую информацию.

Например вот так:

export class Screenshots {
  @depends()
  ctx!: App.Locals

  @rpc()
  async delete(id: string) {
    const screenshot = await getScreenshot(id)
    if (!screenshot) {
      throw error(404, 'Скриншот не найден')
    }

    if (screenshot.authorId !== this.ctx.user?.id) {
      throw error(403, 'Недостаточно прав для удаления скриншота')
    }
    ...
  }
}


В случае с rebac, мы можем аналогичным образом достать объект и субъект и передать их в Permify

На английском правильно говорить "корд". Но как верно подметили другие, на русском я позиционирую как "чорд". Просто потому что забавнее и вируснее 🙃

Возможно, вы не обратили внимание, но в конце статьи есть ссылка на репозиторий с рунами в классах на Svelte 5)

Благодарю, что поделились вариантом реализации ReGraph на React Observable.

Вопрос стоял про то, что в целом нет готовых решений и методов для реализации такой динамики. То, что ее можно реализовать в других реактивных библиотеках - сомнений нет. Ниже в статье был пункт про основные и желательные требования к библиотекам для возможности реализации подхода через граф

Спасибо за поддержку! Тоже радуюсь, когда появляются статьи по Svelte 😊
В статье и проекте код на сторах, однако в репозитории демка уже на рунах

Information

Rating
761-st
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

Фулстек разработчик, Архитектор программного обеспечения
Старший
TypeScript
Svelte.js
Python
FastAPI
Docker
Rust
Golang
C++