@apify/ui-library
TypeScript icon, indicating that this package has built-in type declarations

0.69.0 • Public • Published

Shared UI components library

The principle of this library is to provide a set of components that can be used across multiple projects, and to ensure that the components are consistent in terms of design and functionality. The components are built using React and styled-components.

Development

  1. This is a public package - it shouldn't have any relation or dependency to Apify internal logic - we want to use it across our repositories and some of them might be public.

  2. Shared logic with web and docs - If you’re changing any shared logic with the web that might affect the behavior, performance, or SEO, you need to always test it on both applications before it’s merged and published as a new version of the packages and after it’s done it’s your duty to make sure there are the latest versions within both repositories.

  3. Purpose and documentation - there should be a clear purpose for each component and the component should be properly documented - both code and storybook.

  4. Architecture design and dependencies - No technology-specific logic. We don’t want to use anything technology or codebase-specific (such as Meteor, React router, Next …) as there might be different approaches for the technology where the component is used (examples as linking logic - in Next.js there is Next Link component, same of Next Image instead of using normal tag). This kind of behavior should not happen on the component level. Browser vs. server - some of the components might be used on the web with SSR (Server Side Renderings) and such a component can’t be using browser-specific features (such as accessing window.location)

  5. Supernova tokens update - New supernova tokens are available in supernova_color_tokens.ts and supernova_typography_tokens.json, specific code is generated with npm run generate-theme command

Readme

Keywords

none

Package Sidebar

Install

npm i @apify/ui-library

Weekly Downloads

1,270

Version

0.69.0

License

Apache-2.0

Unpacked Size

1.16 MB

Total Files

380

Last publish

Collaborators

  • mtrunkat
  • jancurn
  • petrpatek
  • mnmkng
  • jaroslavhejlek
  • drobnikj
  • metalwarrior665
  • fnesveda
  • b4nan
  • apify-service-account