capitalone / federated-model-aggregation

The Federated Model Aggregation (FMA) Service is a collection of installable python components that make up the generic workflow/infrastructure needed for federated learning.
https://capitalone.github.io/federated-model-aggregation/
Apache License 2.0
30 stars 11 forks source link

Introduce Lint, Test and Pre-Commit Hook to JS Client #38

Open openrijal opened 1 year ago

openrijal commented 1 year ago

Is your feature request related to a problem? Please describe.

The JS client is being created, and there is some code being produced. Most of the PR Review comments at this early stage can be addressed through following a proper style guide. Enforcing a standard lint library along with test with coverage and pre-commit hooks helps developer productivity and maintains high standard in code.

Describe the outcome you'd like:

Enable support for:

openrijal commented 1 year ago

Discussion with @taylorfturner and @ksneab7 about what rules should be enforced.

We decided it made most sense to look at what does currently the Python Client enforce with Black, and then look at most used external facing Javascript projects (eg: Ease Web, Creditwise, etc).

I will compile a list of equivalent rules, and we can have discussion on those as we move along.

openrijal commented 1 year ago

Python: Flake8 (lint, code) ; Black (extension on top of Flake8) JS/TS: ESLint (lint, code) ; Prettier (extension on top of ESLint)

Python Rule TS Rule Status
Wrap Line Prettier Plugin :enabled: