Code Monkey home page Code Monkey logo

phpcsstandards.github.io's People

Contributors

jrfnl avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

phpcsstandards.github.io's Issues

Auto-generate sniff documentation of various standards to display online

One of the ideas I'm playing with for the website is as follows (outline, details to be determined at a later point):

  • Create a PHPCS Generator class which can generate Jekyll "Collection" format output based on the available XML documentation for sniffs.
  • Create Jekyll templates to:
    • Display all available documentation of a standard as a webpage, including a list of the sniff in a standard which don't have documentation (yet).
    • Display the documentation of all sniffs which contain a certain keyword provided via a "search for a sniff" interface.
  • Have a GH action via cron which will automatically update the Collections whenever any of the supported standards libraries tag a new release and commit the updated Collections file(s).

Constraints:

  • PHPCS currently supports an XML format for the sniff documentation.
    This may very well change in the future.
    If and when, the Generator would need to change as well or rather: be able to take both the old and the new format into account to allow for standards which still use the old format.
  • The current XML format is not documented, i.e. there is no XSD file available, so not all available files may parse correctly.
  • The current XML format does not allow to structurally document which public properties can be set/changed in a sniff via a custom ruleset.

Future ideas:

  • Add a tool, possibly to DevTools, possibly based on phpDocumentor, to be able to generate markdown documentation output based on the file/class docblocks of sniffs and the public properties which can be used in the Readme or another documentation file for a standard.
    An extension to that tool could then possibly extract that information in Collection format for it to be used here as well.
    This is intended to allow for standards which do not have XML documentation of the sniffs available.

Related: squizlabs/PHP_CodeSniffer#1752

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.