DokuWiki

It's better when it's simple

User Tools

Site Tools


development

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
development [2020-11-22 03:06] – [The Development Manual] Fred23development [2024-02-02 16:51] (current) – PhpStorm externally linked 193.72.18.225
Line 1: Line 1:
 +====== DokuWiki Development ======
  
 +You are welcome to contribute to DokuWiki and join the development.
  
 +What you want to contribute is of course up to you---you should scratch your own itches first. If you need some ideas of what is missing you should have a look at the [[bugs|bugtracker]] or on the [[devel:ideas|idea pages]]. You could also consider [[devel:adoption|adopting a plugin or template]]. Begin by reading the [[#Getting Started]] chapter.
 +
 +
 +===== Getting Started =====
 +
 +  - [[devel:Git]] -- Obtaining the code and working with Git((the VCS used for DokuWiki development))
 +    - [[devel:github|Working with Github Pull Requests]]
 +  - [[devel:coding_style|Coding Style]]
 +  - [[devel:Composer]]
 +  - Editor Setup
 +    - [[devel:VIM]]
 +    - [[devel:IntelliJ Idea]] (or [[https://www.jetbrains.com/phpstorm/|PhpStorm]]) {{http://www.jetbrains.com/img/logos/logo_intellij_idea.png?80&nolink&recache}}
 +  - [[devel:Security]]
 +  - Testing
 +    - [[devel:unittesting|Unit Testing]]
 +    - [[devel:browserstack|BrowserStack]] browser testing {{browserstack-logo.png?100&nolink}}
 +  - [[devel:Patches]]
 +  - [[devel:Debugging]]
 +
 +===== The Development Manual =====
 +
 +  - [[devel:Overview]], walk through of how a page request is served
 +    - [[devel:dirlayout|Directory Layout]]
 +    - [[devel:Environment]] -- global variables and defines
 +      * Accessing [[devel:request_vars|Request Variables]]
 +      * [[devel:Session handling]]
 +      * [[devel:Preload]]
 +    - [[devel:Autoloader]] 
 +    - [[devel:Callgraph]]
 +    - [[devel:Logging]]
 +    - [[devel:Locking]]
 +    - [[devel:Action Modes]]
 +    - [[devel:Authentication]]
 +    - [[devel:caching|Caching facilities]]
 +    - [[devel:Parser]]
 +    - [[devel:Metadata]]
 +    - [[devel:fulltextindex|Fulltext Index]]
 +  - [[devel:Plugins]]
 +    - [[devel:Plugin File Structure]]
 +    - [[devel:Common Plugin Functions]]
 +    - [[devel:Action Plugins]]
 +      * [[devel:events|Event System]]
 +      * [[devel:events_list|Events Overview]]
 +      * [[devel:event_handlers|Event Handlers]]
 +      * Examples of [[devel:event handlers code]]
 +    - [[devel:Syntax Plugins]]
 +    - [[devel:Helper Plugins]]
 +    - [[devel:Renderer Plugins]]
 +    - [[devel:Admin Plugins]]
 +    - [[devel:Remote Plugins]]
 +    - [[devel:Auth Plugins]]
 +    - [[devel:CLI Plugins]]
 +    - [[devel:unittesting#plugin_and_template_tests|Plugin and Template Unittests]]
 +    - [[devel:toolbar|The Toolbar]]
 +    - [[devel:Plugin Programming Tips]]
 +  - [[devel:Templates]]
 +    - [[template:Starter]] template -- Basic building block for new templates
 +    - [[devel:Menus]]
 +    - [[devel:style.ini|style.ini]] -- CSS: loading styles and setting variables
 +  - [[devel:Configuration]]
 +  - [[devel:Localization]]
 +  - [[devel:CSS]]
 +    - [[devel:LESS]] preprocessor
 +  - [[devel:JavaScript]] (jQuery, jQueryUI)
 +    - [[devel:jqueryfaq|jQuery FAQ for Plugin Developers]]
 +  - [[devel:SVG]]
 +  - Internal Libraries
 +    - [[devel:utf-8|UTF-8 String handling]]
 +    - [[devel:request_vars|Request (GET/POST) variable handling]]
 +    - [[devel:mail|E-Mail Sending]]
 +    - [[devel:httpclient|HTTP Client Library]]
 +    - [[devel:simplepie|RSS Parser]]
 +    - [[devel:form|Forms]]
 +  - Composer Libraries
 +    - [[devel:geshi|GeSHi Syntax Highlighting]]
 +    - [[devel:phparchive|Zip and Tgz Compression/Decompression]]
 +  - [[devel:Remote API]]
 +    - [[devel:XMLRPC|XML-RPC]]
 +    - [[devel:JSONRPC|JSON-RPC]]
 +  - Further Resources
 +    - [[https://codesearch.dokuwiki.org/xref/dokuwiki/|Development API Reference]]((built daily))
 +    - [[devel:snapshots|Daily Snapshots]]
 +    - [[devel:releases|Developers' Release notes]]
 +    - [[https://github.com/dokuwiki/dokuwiki|Git Webinterface]] for browsing the source and patches
 +    - [[https://www.openhub.net/p/dokuwiki/contributors|Hall of Fame]] -- all DokuWiki contributors
  
 ===== Development Team Guides ===== ===== Development Team Guides =====
development.1606010772.txt.gz · Last modified: 2020-11-22 03:06 by Fred23

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki