Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

bitsgenix/psx

 
 

PSX - Project Structure Checker

yeah so basically this checks if your project has the right structure or not. like if you forgot to add a README or LICENSE or whatever, it'll tell you.

what it does

  • checks if you have basic files (README, LICENSE, etc)
  • looks at your project type (node, go, rust, whatever)
  • tells you what's missing
  • can fix some stuff automatically if you want
  • works on linux, mac, windows

install

quick way

curl -sSL https://raw.githubusercontent.com/m-mdy-m/psx/main/scripts/install.sh | bash

or download binary

go to releases page and download the one for your OS

or build it yourself

git clone https://github.com/m-mdy-m/psx
cd psx
make build

how to use

just run it in your project folder:

psx check

it'll tell you what's wrong. if you want more info:

psx check --verbose

fix stuff automatically:

psx fix

or fix stuff one by one (asks you first):

psx fix --interactive

config

create a psx.yml file in your project:

version: 1

rules:
  general:
    readme_required: error
    license_required: warning
    gitignore_required: warning
  
  structure:
    src_folder_required: warning
    tests_folder_required: error

or just init with a template:

psx init --template node    # for nodejs projects
psx init --template go      # for go projects
# etc

examples

check a nodejs project

cd my-node-app
psx check

# output:
# ✗ README_MISSING
# ✗ tests/ folder not found
# ⚠ No LICENSE file

fix everything

psx fix

# creates README.md
# creates tests/ folder
# asks which license you want

what it checks

basic stuff:

  • README.md exists?
  • LICENSE file?
  • .gitignore setup?
  • source folder (src/ or whatever)?
  • tests folder?

depending on project type:

  • nodejs: package.json valid? dependencies ok?
  • go: go.mod exists? properly formatted?
  • rust: Cargo.toml good?
  • python: requirements.txt or pyproject.toml?

optional stuff (warnings):

  • docs/ folder
  • CI/CD configs (.github/workflows)
  • ADR documents
  • pre-commit hooks

why i made this

i kept forgetting to add READMEs and licenses to my projects lol. also wanted something simple that just works without tons of config.

contributing

sure, send PRs. check CONTRIBUTING.md if you care about that stuff.

license

MIT - do whatever you want

issues?

open an issue on github or email me: [email protected]


made by @m-mdy-m | website

About

Project structure analysis

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 67.1%
  • Makefile 32.9%