frost web est l'interface frontale de l'API Frost de Po.et pour la gestion des comptes et des jetons API.
Toutes les nouvelles fonctionnalités doivent être fusionnées dans le maître derrière une bascule de fonctionnalité, désactivée par défaut. Une fois que la fonctionnalité a été suffisamment testée, la bascule peut être supprimée.
Ce sont des composants ReactJS et des styles Sass. L'architecture des composants s'inspire du design atomique de Brad Frost.
La plupart des composants ont un seul fichier .scss
associé portant le même nom. Il existe également quelques styles globaux vivant dans components/styles
. Les styles sont regroupés et chargés par style-loader
, css-loader
, autoprefixer
, postcss-loader
et sass-loader
de Webpack.
Les composants sont divisés en atomes, molécules, organismes, pages et modaux. La règle générale est la suivante : le plus petit ne devrait pas utiliser le plus grand. Cela signifie que les atomes ne devraient avoir aucune dépendance vis-à-vis d’autres composants, les molécules ne peuvent dépendre que des atomes, etc.
Les pages se trouvent actuellement en dehors de /components
pour des raisons historiques, mais elles seront déplacées dans ce dossier à l'avenir.
Le composant racine est composants/Root.tsx et ReactDOM.render est appelé dans index.tsx.
Les réducteurs React Redux vivent ici. Ils ne devraient avoir aucune logique, il suffit de recevoir des messages et de mettre à jour le magasin redux.
Les sagas Redux-Saga vivent ici. La majeure partie de la logique de l'application, en particulier tous les effets secondaires, ne devrait concerner que les sagas et les sagas.
Toutes les images utilisées par l'application. Ils sont exposés en tant qu'éléments static readonly
d'une classe dans images/Images.tsx, à l'aide du plugin File Loader Webpack pour les charger et les regrouper.
Les extensions aux types natifs de JavaScript vont ici.
Nous suivons principalement le guide de style JS de StandardJS et AirBnB. Nous n’appliquons pas encore automatiquement les styles.
Quelques règles :
var
est interdit et que let
doit être évité autant que possible - utilisez toujours const
à la place.