Jump to content
Nico Knoll

How to present your module

Recommended Posts

Hey,
I just thought it might be helpful to have a guide for your module's presentation:



The Title

The title of a module is an important part of it. It should kind of make the main function of a module understandable after the first reading. So there are some guidelines for naming a module:
 

When creating new modules that fall in this class of predefined types, naming conventions should be used to identify the module as being of that type. For instance, if you create a new Textformatter module called "Something" you should name it "TextformatterSomething". Likewise, a new Inputfield module called "SuperCheckbox" should be named "InputfieldSuperCheckbox".


(via http://processwire.com/api/modules/)

Here is a more extended list of some "module prefixes" and a short description for each:
 


  • Export - any module that provides site data export capabilities, especially where there may be a related Import module.
  • Fieldtype - any module that extends the 'Fieldtype' class. Represents a data type used by ProcessWire fields.
  • Form - any module that deals with creating/processing web forms (some crossover potential with Markup).
  • Inputfield - any module that extends the 'Inputfield' class. Represents an HTML input widget used to collect data in the admin.
  • Import - any module that imports data to create new data in a PW site.
  • Jquery - any module that adds something related to jQuery/Javascript.
  • Language - any module that provides support for other languages
  • Process - any module that extends the 'Process' class. Typically attached to a page for handling admin actions. If it's related to another Process module (core or 3rd party) it's name should start with that module, i.e. ProcessPageEditLink is related to ProcessPageEdit.
  • Markup - any module designed for creating or parsing markup
  • Page - any module designed to add capabilities to PW's Page class.
  • Textformatter - any module that extends the 'Textformatter' class, for runtime output formatting of text fields.


(via http://processwire.c...-module-naming/)



The Description

A good description is another important part of your module's presentation. Here is a short list of sections you could (or maybe should) include in it:

  • General: The main function of your module
  • How to use: A description of how to use your module which maybe includes some details the user won't see directly.
  • Installation: If there is something special about the installation of your module you should add this to your description.
  • Screenshots/-casts: It's awesome if you would take a picture of your module (if it changes or adds something the user is able to see). Or maybe a screencast if you like to. (Great example: http://processwire.c...ncy-admin-mode/)


Links

At the end of your post you should add some links like where the user can download the plugin and if you've added your module to the module section you should post the link here too.



Module Section

If you've posted your module already to the modules section you can easily copy it's contents there and use them for your post here or - of course - the other way around.



I hope this post was helpful to you.

Greets,
Nico

  • Like 10

Share this post


Link to post
Share on other sites

Please add "Module" as first tag and select "Use first tag as prefix" if you're releasing a module.

post-140-0-05892800-1429552657_thumb.png

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...