Coder Social home page Coder Social logo

manual's Introduction

Joomla! Programmers documentation

This repository should hold all Joomla! documentation needed to develop extensions.

The Documentation can be found at https://manual.joomla.org

Contributing to the Joomla Manual

This manual is built using Docusaurus 3, a modern static website generator. If you want to contribute to it then this page will help you get started.

Updates to the documentation is managed via this repository, so you should initially fork it into your own github account. Then you can make changes to the documentation files and submit a pull request to the Joomla manual. Ensure that you continue to sync your fork branches with the Joomla manual main branch.

The documentation uses the Markdown syntax, with additional features which Docusaurus provides.

To make documentation changes you'll probably find it easiest to use one of two options:

  1. Install Docusaurus on your own machine, and make changes there
  2. Use github dev to make the changes on the github server.

Install Docusaurus Locally

To install Docusaurus on your own machine you should initialise a local git repository and clone the manual from the forked copy in your githut repository into this git instance.

Then change directory to your local git repository and do:

$ npm install

Once Docusaurus is installed:

$ npm run start

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

$ npm run build

This command generates static content into the build directory and can be served using any static contents hosting service.

Use github dev

To use github dev go to your repository and press the "." (dot) key, as described within the github.dev guide. You can then:

  • create a new git branch for your changes
  • create new files and folders, modify and delete existing files, upload files
  • preview files (right-click on the file tab) - this will show interpreted markdown, but will not interpret Docusaurus additions
  • commit and push changes
  • return to github repository (by clicking on GitHub in bottom left, or by replacing github.dev by github.com in the URL)

Preview for pull request

Once you raise a pull request on the Joomla manual a test build is run to identify any problems with your documentation. If you find a check has failed then click on the Details of the check which failed, and you can check the console logs to find the problem.

When the build succeeds you will be able to see the result of your documentation changes by navigating to a URL like http://pr-240.manual.joomlacode.org/docs/, where you replace 240 with the number of your pull request. This link will be added to the "checks" section in the pull request as "preview".

Versions

The Joomla Manual contains documentation for multiple versions of the Joomla software.

The mapping between the versions of the manual in github and the live manual is:

github manual (development) Live Docusaurus manual
/docs "upcoming" release (shown as /docs/next in the URL)
/versioned_docs/version-m.n version m.n (under "Current releases")

If your documentation changes relate to multiple versions of Joomla then you should duplicate these changes into multiple versions of Joomla manual. These versions which are updated are currently agreed to be:

  • the version m.n of the latest full Joomla release ("latest" release)
  • the version m.n+1 of the next Joomla release ("upcoming" release)
  • the last version (m-1.last) of the Joomla previous major version

Other versions may be present within /versioned_docs but are not updated with the changes, even if the documentation is true for those Joomla versions.

To minimise changes it's recommended that you initially just make changes within the /docs area, and then raise the pull request. This allows team members to review the documentation, and for you to fix any issues without having to replicate changes to multiple versions. Then when the review process is complete the changes can be replicated to the other versions prior to merging.

Once the pull request is merged you can delete the branch on your own repository, and sync your main branch with the updated Joomla manual main.

Common Build Problems

If you use angle brackets or curly brackets in text then always enclose these in backticks, like <h1> or {['a':1, 'b':2]}.

Don't use colons (:) in titles.

Don't use <br> to force a new line (eg in table text); use <br/> instead.

Don't use subdirectory names which match somewhat the parent directory name. For example, avoid ./install-update/install/, as this can cause docusaurus to report broken links.

Docusaurus Additions

You won't see the effect of these when you preview the Markdown text, but you will see them by previewing the Pull Request.

Front Matter should be used for titles and position in the left-hand sidebar:

---
title: Best Practices
sidebar-position: 2
---

Code blocks are enclosed in 3 backticks, and can have a title:

public static function hello() 
{
    echo "Hello!"; 
}

Line numbering and highlighting of individual lines are also supported.

To aid readability of the markdown please leave a blank line before and after code blocks.

Admonitions We don't use blank lines around content, and we add 2 spaces before the text messages.

:::note[Developer Note]
  Some **content** with _Markdown_ `syntax`. Check [this `api`](#).
:::

:::note[Joomla Issue]
  For issues that affect the documentation - please link to the issue on the Joomla Issue Tracker
:::

:::tip
  Some **content** with _Markdown_ `syntax`. Check [this `api`](#).
:::

:::info
  Some **content** with _Markdown_ `syntax`. Check [this `api`](#).
:::

:::warning
  Some **content** with _Markdown_ `syntax`. Check [this `api`](#).
:::

:::danger
  Some **content** with _Markdown_ `syntax`. Check [this `api`](#).
:::

Please use the following placeholder for unfinished sections of a document.

:::note[TODO]
  This section is missing, please use the **Edit this Page** link at the bottom of this page to add this section.
:::

If the page is not completed yet and bigger parts are missing use

:::caution[TODO]
  This page is unfinished, please use the **Edit this Page** link at the bottom of this page to help make it more useful.
:::

Diagrams

Where possible, use Mermaid for creating diagrams for inclusion in the documentation. Where Mermaid doesn't provide what you need, then please include the saved diagram from your drawing tool in addition to the image file.

Images, code zip files, etc should be held in a folder _assets at the point in the documentation where they're used.

Other Recommendations

To align with a11y requirements for accessibility, please don't have more than one header level 1:

# Just One H1

manual's People

Contributors

bembelimen avatar brianteeman avatar ceford avatar chmst avatar dgrammatiko avatar drmenzelit avatar elfangor93 avatar fedik avatar hackwar avatar heelc29 avatar hleithner avatar joomla-dependency-bot avatar ladysolveig avatar laoneo avatar macjoom avatar manuelhu avatar mfleeson avatar nikosdion avatar obuisard avatar pe7er avatar rabahalishah avatar razzo1987 avatar rdeutz avatar renovate-bot avatar richard67 avatar robbiejackson avatar roland-d avatar snipersister avatar softforge avatar wilsonge avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

manual's Issues

PHP Requirements for Joomla 5

Reported from joomla/joomla-cms#42887

Is your feature request related to a problem? Please describe.

Fresh install of Joomla 5 on server throws Error 500 unless following PHP Moddule is selected:

nd_mysql

This is the case for Joomla 5 when using PHP 8.1 or 8.2

Describe the solution you'd like

Add nd_mysql to the list under More Information for Joomla! 5 at:

https://manual.joomla.org/docs/next/get-started/technical-requirements/

List currently reads:

Modules: json, simplexml, dom, gd, mysqlnd or pgsql

Should it read:

Modules: json, simplexml, dom, gd, nd_mysqli, mysqlnd or pgsql

Additional context

Only observed the above on server run my one UK hosting provider

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Awaiting Schedule

These updates are awaiting their schedule. Click on a checkbox to get an update now.

  • Lock file maintenance

Detected dependencies

npm
package.json
  • @cmfcmf/docusaurus-search-local ^1.2.0
  • @docusaurus/core 3.4.0
  • @docusaurus/plugin-sitemap 3.4.0
  • @docusaurus/preset-classic 3.4.0
  • @docusaurus/theme-mermaid 3.4.0
  • @mdx-js/react ^3.0.1
  • clsx ^2.1.1
  • patch-package ^8.0.0
  • prism-react-renderer ^2.3.1
  • react ^18.3.1
  • react-dom ^18.3.1
  • react-icons ^5.2.1
  • @docusaurus/module-type-aliases 3.4.0
  • node >=18.0
  • @docusaurus/core ^3.1.0

New Pages

I have at least two pages/sections that I need to write.

  1. making the list view accessible
  2. adding table-columns.js to the list view

Do I just write them as standalone pages for someone to add in the appropriate place or ....?

Search box

I think this is an upstream issue but I couldn't find out where so I am just flagging it up for now as something to check

The search box generates code that includes the code
aria-labelledby="autocomplete-0-label"

There is no label of that name so this results in an invalid aria error

Joomla Documentation Developer Portal needs to be updated

This issue refers to the following page in the Joomla documentation:
https://docs.joomla.org/Portal:Developers.
The portal page in the Joomla documentation does not yet contain any information specific to the J4 version and does not yet contain a reference to the https://manual.joomla.org website.

The last minor change to the page was made in Apr 2020.

I am asking for suggestions on what obsolete content should be removed and what new information needs to be added. (With a JDoc account, the wiki can also be edited directly).

[jdev] Developing an MVC component for Joomla4 is incomplete

Hi,
I'm not sure if this is the correct place but I was following this MVC tutorial https://docs.joomla.org/Special:MyLanguage/J4.x:Developing_an_MVC_Component but it is incomplete.
As of this page https://docs.joomla.org/J4.x:Developing_an_MVC_Component/Our_First_Backend_Page there is no text any more, and I don't know if the tutorial of Joomla3 is ok to follow for this part in case of inconsistencies.
Also asked at the joomla.org forum. No response yet.
For my next project I'd like to build it as a Component in Joomla instead of a php based website on its own.

Thanks.
Regards,
Jerry

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.