1.2.1 • Published 20 days ago

@orangesk/ecare-assets v1.2.1

Weekly downloads
-
License
ISC
Repository
-
Last release
20 days ago

Readme

Toto je hlavný repozitár pre orangesk/eshop. Obsahuje HTML prototypy jednotlivých častí eshopu.

HTML prototypy sú rozčlenené do projektov. Každý projekt má svojho autora (dodávateľ), product ownera (zadávateľ) a resources - odkazy na design files, readme, asana projekt...

Obsah

Build files

NPM balik

Každý release je publikovaný na NPM ako balík @orangesk/eshop-assets.

Balík obsahuje build/lib subory a sprite.svg. Nakoľko je to verejný balík, neobsahuje HTML prototypy.

Ako prispievať?

Nakoľko v repozitári spolupracujú viaceré strany, musíme dodržiavať stanovené pravidlá. Orange design system už definuje pravidlá kvality kódu, pre tento repozitár ale platí nasledovný release proces:

  • Code review vykonáva spravovateľ repozitára.
  • Prispievateľ vždy vytvára pull requesty do dev vetvy podľa branching modelu.
  • Po schválení príspevkov a mergnutí do dev vetvy prispievateľ pripraví release vetvu podľa semver pravidiel, vyplní changelog a vytvorí pull request na vydanie novej verzie.

Štruktúra repozitára

orange-web
└── src
    ├── assets # staticke assety, pri builde sa kopiruju do build foldra
    ├── components # vsetky komponenty
    ├── layouts # globalne layouty
    │   └── base.njk # Hlavny layout s megamenu a footrom
    ├── lib
    │   ├── ODS.js # entry point pre ODS scripty
    │   ├── ODS.scss # entry point pre ODS styly
    │   ├── project.js # entry point pre projektove scripty
    │   └── project.scss # entry point pre projektove styly
    ├── pages
    │   ├── index.mdx # homepage tohto repozitara
    │   ├── readme.mdx # stranka tejto dokumentacie
    │   ├── changelog.mdx # stranka changelogu projektu
    │   └── project-name # priecinok pre projekt
    │       └── page-name.mdx # konkrétny prototyp projektu
    ├── scripts
    │   └── megamenu.js # JS pre megamenu
    ├── styles # globalne styly
    │   ├── fonts.scss # stranka changelogu projektu
    │   ├── megamenu.scss # styly pre megamenu
    │   ├── footer.scss # styly pre footer
    │   └── shame.scss # hanba, hacky
    └── utils # utility potrebne na beh tohto repozitara a zdielane pomocne subory k modulom/komponentom

src/components

React komponenty používané na webe Orange.sk. Obsahuje custom komponenty, ktoré ešte neexistujú v ODS (kandidáti) a opakujúce sa patterny.

orange-web/src/components
└── ComponentName # vzdy camel case
    ├── ComponentName.js # komponent samotny
    ├── ComponentName*Partial*.js # pripadny interny komponent
    ├── ComponentName.static.js # JS plugin
    ├── data.js # data zobrazovane komponentom 
    └── styles
        ├── config.scss # scss mapy definuju jednotlive varianty komponentu
        ├── mixins.scss # mixiny generuju styly
        └── config.scss # mixiny vypluvaju styly do konkretnych classnames

Názov projektu

Nový projekt by mal mať vždy názov typu project-name, vzdy lower case, oddeleny pomlckami.


Priečinok data / Dátové mockupy

V obrazovkách prototypov sa často prepoužívajú dáta. Snažme sa vyhýbať vkladaniu konkrétnych dátových štruktúr priamo do obrazovky alebo priamo do komponentu, ktorý využíva tieto dáta.

Dáta používané na viacerých miestach

src/data slúži na vytváranie potrebných štruktúr, ak sme si istý, že tieto dáta bude využívať viac komponentov/stránok.

src/data
└── file-name.js # vzdy lowercase, oddelene pomlckami

Dáta používané len v jednom komponente

Componnet/data.js slúži na vytváranie potrebných štruktúr ktoré konzumuje práve jeden komponent.

src/components/Component
└── data.js

Priečinok layouts

Layouts sú hlavné obaľovače kontentu stránky v priečinku pages.

layouts/
└── base.njk
    ...

Priečinok pages

Všetky prototypy stránok rozdelené po projektoch.

Každá stránka by mala mať názov, ktorý čo najpresnejšie popisuje čo sa na stránke nachádza. Ak je viac podobných stránok rozlišujeme ich príponou na konci názvu stránky.

pages/
└── project-name
    ├── info.json # informácie o projekte. povinný súbor.
    ├── readme.mdx # voliteľné doplňujúce informácie o projekte, napríklad popis správania alebo flowu.
    ├── page-name.mdx # konkrétna stránka
    └── page-name-variant.mdx # variant stránky
├── index.mdx # homepage tohto repozitára. zobrazuje projekty a doplňujúce informácie z info.json
└── readme.mdx # toto readme
    ...

Priečinok scripts

Obsahuje projektové javascriptové moduly. Návod ako vytvoriť modul a používať ho

scripts/
  lib/ # pomocné metódy
  modules/ # JS moduly ktoré sa neviažu na konktrétny komponent
  index.js # webpack entry point pre všetok JS
  main.js # inicializácia JS modulov potrebných pre beh všetkého v tomto repozitári. súbor je oddelený od index.js kôli rozdeleniu build-u.

Priečinok styles

Štýly ktoré nepatria ku konrétnym komponentom.

styles/
  shame.scss # Hanba hanbatá sem patrí všetko čo by sa nemalo robiť, ale treba to urobiť. Napríklad rýchly bugfix.

Priečinok utils

Obsahuje menšie pomocné scripty používané pri vytváraní prototypov.

Neptaria sem utility pre JS ktorý beží v prehliadači.

utils/
  classes.js
  helpers.js
  propTypes.js
  ...
1.2.1

20 days ago

1.2.0

2 months ago

1.1.1

6 months ago

1.1.0

6 months ago

1.0.0

9 months ago

1.1.3

5 months ago

1.1.2

6 months ago

0.14.2

1 year ago

0.14.0

2 years ago

0.14.1

2 years ago

0.13.0

2 years ago

0.12.0

2 years ago

0.10.0

2 years ago

0.11.0

2 years ago

0.9.0

2 years ago

0.11.1

2 years ago

0.8.0

2 years ago

0.7.0

2 years ago

0.6.0

2 years ago

0.5.0

3 years ago

0.4.0

3 years ago

0.3.0

3 years ago

0.2.0

3 years ago

0.1.2

3 years ago

0.1.0

3 years ago