Toolverse
All skills

services-layer

by EpicenterHQ

Service layer patterns with createTaggedError, namespace exports, and Result types. Use when creating new services, defining domain-specific errors, or understanding the service architecture.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Category
Mobile
Views
8

About this skill

Service layer patterns with createTaggedError, namespace exports, and Result types. Use when creating new services, defining domain-specific errors, or understanding the service architecture.

How to use

  1. Zainstaluj skill services-layer w swoim projekcie Whispering. Skill zawiera dokumentację wzorców implementacji serwisów zgodnie z trzywarstwową architekturą: UI → Query/RPC → Services.
  2. Gdy potrzebujesz stworzyć nowy serwis, zdefiniuj najpierw błędy domenowe za pomocą funkcji defineErrors z biblioteki wellcrafted. Grupuj błędy w obiekcie namespace, gdzie każdy klucz staje się wariantem błędu.
  3. Implementuj logikę serwisu jako czystą funkcję — bez dostępu do stanu UI, ustawień ani reaktywnych magazynów. Serwis powinien przyjmować tylko jawne parametry i zwracać typ Result<T, E>.
  4. Eksportuj serwis i jego typy błędów poprzez namespace exports, aby zapewnić spójną organizację kodu i ułatwić konsumpcję w warstwie Query.
  5. Gdy potrzebujesz obsługi błędów asynchronicznych, odwołaj się do skill error-handling, aby poznać wzorce trySync i tryAsync. Dla integracji z UI wykorzystaj skill query-layer do konsumpcji serwisów za pośrednictwem TanStack Query.
  6. Testuj serwisy jednostkowo, przekazując mockowane parametry — czystość i izolacja serwisów czyni je łatwymi do testowania bez dodatkowych zależności.

Related skills