.eslintrc.json
.prettierrc.json
.vscode
    settings.json
README.md
lint-staged.config.js
next-env.d.ts
next.config.js
package.json
public
    images
        lemnis_logo.svg
        logo_full.svg
        logo_icon.svg
        logo_small.svg
        near_icon.svg
        near_logo.svg
    vercel.svg
src
    components
        CryptoInput
            types.ts
        SwapInput
            types.ts
    grommetTheme.ts
    hooks
        redux.ts
        useGetBalance.ts
        useGetStats.ts
    near
        config.ts
        initContract.ts
        types.ts
    pages
        api
            hello.ts
    redux
        api
            nearQuote.ts
        store.ts
        walletSlice.ts
    routes.ts
    styles
        Home.module.css
        globals.css
    utils
        numbers.ts
tsconfig.json

# qUid Frontend

qUid Frontend App is built with Next.js + TypeScript + ESLint.

# Get started

```
# Install dependencies
yarn

# Start dev server
yarn dev

# Start tests (or yarn test --watch for watch mode)
yarn test

# Lint (the dot is important)
yarn lint .

# If we want to build
yarn build
```

# Technical choices

- ESLint and Prettier are integrated with VSCode out of the box (you just need VSCode's ESLint plugin).
- Prettier is integrated with ESLint, so you do not need the Prettier plugin.
- Improved lint-staged configuration: linting will only happen on staged files, not all files.
- Because of Husky settings, Typescript types and linting are checked before each commit. If for some reason you want to ignore and commit anyway you can use the `--no-verify` flag. (ex.: `git commit --no-verify -m "Updated README.md"`)

For automatic ES-Lint corrections on VSCode you can add this setting on you environment:

```
// .vscode/settings.json
{
  "editor.formatOnSave": false,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  }
}
```

For the same in Webstorm follow these instructions:
`https://www.jetbrains.com/help/webstorm/eslint.html#ws_eslint_configure_run_eslint_on_save`
