All Projects → zirkonit → duplex

zirkonit / duplex

Licence: Apache-2.0 license
Duplicate code finder for Elixir

Programming Languages

elixir
2628 projects

Projects that are alternatives of or similar to duplex

Reviewdog
🐶 Automated code review tool integrated with any code analysis tools regardless of programming language
Stars: ✭ 4,541 (+22605%)
Mutual labels:  lint, static-code-analysis, static-analysis
Cflint
Static code analysis for CFML (a linter)
Stars: ✭ 156 (+680%)
Mutual labels:  lint, static-code-analysis, static-analysis
lints
Lint all your JavaScript, CSS, HTML, Markdown and Dockerfiles with a single command
Stars: ✭ 14 (-30%)
Mutual labels:  lint, static-code-analysis, static-analysis
tryceratops
A linter to prevent exception handling antipatterns in Python (limited only for those who like dinosaurs).
Stars: ✭ 381 (+1805%)
Mutual labels:  static-code-analysis, static-analysis
shell-linter
A Github Action for ShellCheck
Stars: ✭ 58 (+190%)
Mutual labels:  lint, static-analysis
pahout
A pair programming partner for writing better PHP. Pahout means PHP mahout 🐘
Stars: ✭ 43 (+115%)
Mutual labels:  lint, static-analysis
Exakat
The Exakat Engine : smart static analysis for PHP
Stars: ✭ 346 (+1630%)
Mutual labels:  lint, static-analysis
Whispers
Identify hardcoded secrets and dangerous behaviours
Stars: ✭ 66 (+230%)
Mutual labels:  lint, static-code-analysis
Rubocop Rspec
Code style checking for RSpec files
Stars: ✭ 603 (+2915%)
Mutual labels:  lint, static-analysis
Njsscan
njsscan is a semantic aware SAST tool that can find insecure code patterns in your Node.js applications.
Stars: ✭ 128 (+540%)
Mutual labels:  lint, static-analysis
Config Lint
Command line tool to validate configuration files
Stars: ✭ 118 (+490%)
Mutual labels:  lint, static-analysis
Nodejsscan
nodejsscan is a static security code scanner for Node.js applications.
Stars: ✭ 1,874 (+9270%)
Mutual labels:  lint, static-analysis
Protoc Gen Lint
A plug-in for Google's Protocol Buffers (protobufs) compiler to lint .proto files for style violations.
Stars: ✭ 221 (+1005%)
Mutual labels:  lint, static-analysis
mllint
`mllint` is a command-line utility to evaluate the technical quality of Python Machine Learning (ML) projects by means of static analysis of the project's repository.
Stars: ✭ 67 (+235%)
Mutual labels:  lint, static-analysis
Detekt
Static code analysis for Kotlin
Stars: ✭ 4,169 (+20745%)
Mutual labels:  lint, static-analysis
luli
A static analysis and linter tool for Lua
Stars: ✭ 45 (+125%)
Mutual labels:  lint, static-analysis
Phpstan Phpunit
PHPUnit extensions and rules for PHPStan
Stars: ✭ 247 (+1135%)
Mutual labels:  static-code-analysis, static-analysis
lint-checks
A set of opinionated and useful lint checks
Stars: ✭ 61 (+205%)
Mutual labels:  lint, static-analysis
Cfn nag
Linting tool for CloudFormation templates
Stars: ✭ 808 (+3940%)
Mutual labels:  lint, static-analysis
Woke
✊ Detect non-inclusive language in your source code.
Stars: ✭ 190 (+850%)
Mutual labels:  lint, static-analysis

Duplex

Description

Duplex allows you to search for similar code blocks inside your Elixir project.

Installation as escript

Remotely (without repository cloning)

mix escript.install https://raw.githubusercontent.com/zirkonit/duplex/master/duplex

Locally

mix do escript.build, escript.install

Usage as escript

cd /path/to/project
~/.mix/escripts/duplex

Installation as dependency

  1. Add :duplex to deps in mix.exs
def deps do
  [{:duplex, "~> 0.1.1"}]
end
  1. Update dependencies
mix deps.get

Usage as dependency

iex -S mix
Duplex.show_similar

Config

You can change default values on config.exs by adding next lines with your own values

config :duplex, threshold: 7 # filter AST nodes with `node.length + node.depth >= threshold`
# Than lower threshold, than simpler nodes will be included.
# Optimal value is around 7-10. Default is 7.
config :duplex, dirs: ["lib", "config", "web"] # directories to search for Elixir source files
config :duplex, n_jobs: 4 # number of threads
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].