Coder Social home page Coder Social logo

Comments (4)

belgattitude avatar belgattitude commented on May 15, 2024 1

Haha, yes it's unclear for me too.

Basically, on packages and apps I extend from a root base ./eslintrc.base.js. We don't have to, but that's how I felt as a first step.

A bit like this.

.
├── apps
│   └── web-app
│       └── .eslintrc.js   (extends eslint.base: adds react, nextjs, rtl...)
├── .eslint.base.js        (base config to extend: just typescript and jest)
├── .prettierignore        (prettier ignored files)
└── .prettierrc.js         (prettier global configuration)

This base includes generic rules and plugins that are valid for typescript typescript+jest project on which each extended config adds plugins for react, storybook, nextjs.

So you can make the change there.

Note that I added a similar exception for .tsx (I use tsx rather than ts, it allows to disambiguate if it's just plain ts or react).

See here for example:

{
files: ['*.tsx'],
rules: {
'@typescript-eslint/naming-convention': [
'warn',
{
selector: 'variable',
format: ['camelCase', 'PascalCase'],
},
{
selector: ['function'],
format: ['camelCase', 'PascalCase'],
},
{
selector: 'parameter',
format: ['camelCase', 'PascalCase'],
leadingUnderscore: 'allow',
},
],
},
},

The comment is not totally accurate in this file. Just realized :)

You can find some initial doc here about the eslint setup: https://github.com/belgattitude/nextjs-monorepo-example/blob/main/docs/about-linters.md

Let me know if it clears up the weird stuffs :)

from nextjs-monorepo-example.

belgattitude avatar belgattitude commented on May 15, 2024

Just a afterward thought ?

The problem I am facing is my PascalCase functions are being marked as errors by eslint, due to the following rule

You mean react functional components ?

from nextjs-monorepo-example.

sauldeleon avatar sauldeleon commented on May 15, 2024

YEs! that is exactly where I am facing the issues. For example, defining a simple Button component

export const Button = () => <button>Button Text</ button>

Button is marked as error by eslint, because it is not camelCase

I think the problem is the code snippet you places about the .tsx exception, which makes total sense...

I will try again later in my code!

from nextjs-monorepo-example.

sauldeleon avatar sauldeleon commented on May 15, 2024

@belgattitude just in case, I think I can close this as it is fixed and more than solved.

Also, I have an initial configuration for VScode environment, but on a separate repo with a ton of modifications.

I want to clone your last version and add my configuration to check everything is working as expected

Thanks again!

from nextjs-monorepo-example.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.