Project standards and conventions
See original GitHub issueHey @tannerlinsley, loving react-table
and would love to contribute and make things easier for you and contributors, so I’d like to open a discussion and see if you’re happy to work with a checklist of standards and conventions to introduce.
Todo
Tasks are ordered by ease of implementation / impact on maintenance and reliability.
- Code formatting
- 1. add
prettierrc.js
to normalise prettier configs across all contributors setup - 2. use
husky
to automate formatting of code for contributors not using prettier without having to install prettier
- 1. add
- Testing
- 1. add custom
jest.config.js
for more flexibility over test configs (removereact-scripts
dep?) - 2. add
@testing-library/react
for awesome testing - 3. add separate jest projects for unit testing and linting, as well as
jest-watch-select-projects
for switching between watched tests quickly - 4. add
jest-watch-typeahead
for faster selection of test files to run - 5. add
is-ci-cli
so that a singlenpm test
script can be run for local watched testing while CI runs through tests once
- 1. add custom
- Commit message formatting
- add
commitizen
to introduce a standard for commit messages to allow for automated semantic releases and generated changelogs
- add
- Changelog
- 1. generate changelog using
conventional-changelog
to save time, automate linking to issues fromcommitizen
-formatted commits
- 1. generate changelog using
- Semantic releases
- 1. add
semantic-release
and configure Travis to automate semantic versioning based on commit messages. Ensure latest commit is tagged before installing.
- 1. add
- Code coverage
- 1. update Travis to send code coverage results to codecov.io or similar on successful builds
- TypeScript
1. rewrite code in TypeScript, or (at least)- add TypeScript module declarations
Let me know what you think about each point; will be happy to get working on the list as soon as you’re happy!
Issue Analytics
- State:
- Created 4 years ago
- Reactions:6
- Comments:20 (9 by maintainers)
Top Results From Across the Web
Project Standards - ProjectManagement.com
Project standards are the rules and conventions governing the way in which a project will be conducted. They may be driven by organizational...
Read more >Best Practices or Project Standards
Best practices are good ideas that work on most projects and most teams most of the time. Generally, they cover ideas that you...
Read more >Coding Standards and Conventions
MANIFEST, List of project files with brief explanations ; INSTALL, Installation instructions ; Copying, Licensing information ; TODO, Wish list for future ...
Read more >The Importance of Naming Conventions for Project Management
But formalizing a standard naming convention for your team's content means that everyone has a common language to use when referring to projects...
Read more >CODING STANDARDS AND CONVENTIONS IN SOFTWARE ...
CODING STANDARDS AND CONVENTIONS IN SOFTWARE DEVELOPMENT TEAM · Naming Conventions: The naming convention is how your packages, classes methods, ...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Just had a discussion about this here: https://spectrum.chat/react-table/general/the-types-for-typescript-are-outdated~79730c66-b5f8-48f0-b8d9-a187c3d2f435
TLDR, I would like the types to be kept over at DefinitelyTyped and distributed via
@types/react-table
. Then all we need to do is add that as a dependency in React Table and we’re good to go.My reasoning: https://blog.johnnyreilly.com/2019/08/symbiotic-definitely-typed.html, someday RT will be TS, but tomorrow is likely not that day.
I think this can be closed now as long as we track the rest of the items in their own issues like #1467