L
library
How the Faebryk component library is structured, how `_F.py` is generated, and the conventions/invariants for adding new library modules.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
How the Faebryk component library is structured, how _F.py is generated, and the conventions/invariants for adding new library modules.
How to use
- Zapoznaj się ze strukturą biblioteki znajdującą się w katalogu
src/faebryk/library/. Zawiera ona komponenty fizyczne (np.Resistor.py,Capacitor.py) oraz definicje cech behawioralnych (np.can_bridge.py,is_power.py). - Importuj komponenty z wygenerowanego modułu
_F.pyużywając wzorcaimport faebryk.library._F as F. Plik_F.pyjest automatycznie generowany i nie powinien być edytowany ręcznie. - Jeśli chcesz dodać nowy komponent lub cechę, utwórz plik w katalogu
src/faebryk/library/z klasą o tej samej nazwie co plik. Rozróżniaj między Traits (cechy behawioralne — co komponent może robić) a Components (komponenty fizyczne — czym komponent jest). - Po dodaniu nowego modułu uruchom generator
tools/library/gen_F.py, który automatycznie skanuje katalog biblioteki, wykrywa nowe klasy i aktualizuje plik_F.py. Generator obsługuje porządkowanie eksportów poprzez sortowanie topologiczne, aby uniknąć cyklicznych importów. - Przetestuj nowy komponent w swoim kodzie atopile, importując go z
Fi tworząc instancję za pomocą metodbind_typegraph()icreate_instance(), tak jak w przykładzie z rezystorem.