Make and publish extensions.

Overview

Deutsch   English   Svenska

Publish 0.8.59

Make and publish extensions.

Screenshot

How to make an extension

Start with a feature, language or theme. This will show you which files are required. Every extension needs an extension.ini file with extension settings. For sophisticated extensions there's an API for developers. Please make sure that your extension follows our coding and documentation standards. It's not important which standard we use, but that we all use a common one. Then you can dive into any extension and find a well-known structure in which you can quickly find your way around. Upload your extension to GitHub, let us know if you need help.

If you want others to discover your extension, add the topic datenstrom-yellow to your repository.

How to publish an extension

You can publish your extension at the command line. The published extensions are included in the update process. Increase the version number in your code. Open a terminal window. Go to your installation folder, where the file yellow.php is. Type php yellow.php publish all. You can optionally add the name of a folder. Upload your changes to GitHub and create a pull request for datenstrom/yellow-extensions.

If you want to mention other developers/designers/translators, add co-authors to the commit message.

How to publish the standard installation

You can publish the standard installation at the command line. The standard installation is a collection of the most important extensions, translations and the installer. Usually a maintainer takes care of it, but the same tools are available to everyone. Open a terminal window. Go to your installation folder, where the file yellow.php is. Type php yellow.php publish yellow. This will update all necessary files. Upload your changes to GitHub and create a pull request for datenstrom/yellow.

If you want to mention other developers/designers/translators, add co-authors to the commit message.

Examples

Extension settings for a feature:

# Datenstrom Yellow extension settings

Extension: Helloworld
Version: 0.8.15
Description: Example feature for Datenstrom Yellow.
DocumentationUrl: https://github.com/schulle4u/yellow-helloworld
DownloadUrl: https://github.com/schulle4u/yellow-helloworld/archive/main.zip
Published: 2020-08-13 16:12:30
Developer: Steffen Schultz
Tag: feature
system/extensions/helloworld.php: helloworld.php, create, update
system/extensions/helloworld.js: helloworld.js, create, update
system/extensions/helloworld.css: helloworld.css, create, update

Extension settings for a language:

# Datenstrom Yellow extension settings

Extension: English
Version: 0.8.32
Description: English/English with language 'en'.
DocumentationUrl: https://github.com/annaesvensson/yellow-language/tree/main/translations/english
DownloadUrl: https://github.com/datenstrom/yellow-extensions/raw/main/downloads/english.zip
Published: 2022-04-24 15:40:08
Translator: Mark Seuffert
Tag: language
system/extensions/english.php: english.php, create, update

Extension settings for a theme:

# Datenstrom Yellow extension settings

Extension: Stockholm
Version: 0.8.13
Description: Stockholm is a clean theme.
DocumentationUrl: https://github.com/annaesvensson/yellow-stockholm
DownloadUrl: https://github.com/datenstrom/yellow-extensions/raw/main/downloads/stockholm.zip
Published: 2022-06-15 16:03:38
Designer: Anna Svensson
Tag: theme
system/extensions/stockholm.php: stockholm.php, create, update
system/themes/stockholm.css: stockholm.css, create, update, careful
system/themes/stockholm.png: stockholm.png, create
system/themes/stockholm-opensans-bold.woff: stockholm-opensans-bold.woff, create, update, careful
system/themes/stockholm-opensans-light.woff: stockholm-opensans-light.woff, create, update, careful
system/themes/stockholm-opensans-regular.woff: stockholm-opensans-regular.woff, create, update, careful

Showing available folders at the command line:

php yellow.php publish

Publishing all folders at the command line:

php yellow.php publish all

Publishing extensions at the command line:

php yellow.php publish yellow-helloworld
php yellow.php publish yellow-language
php yellow.php publish yellow-stockholm

Settings

The following settings can be configured in file system/extensions/yellow-system.ini:

PublishSourceCodeDirectory = directory with source code

The following settings can be configured in file extension.ini:

Extension = extension name
Version = extension version number
Description = extension description, one line maximum
DocumentationUrl = extension documentation
DownloadUrl = extension download address
Published = extension publication date, YYYY-MM-DD format
Developer = responsible developer(s) of a feature, comma separated
Designer = responsible designer(s) of a theme, comma separated
Translator = responsible translator(s) of a language, comma separated
Status = extension status, supported status values
Tag = extension tag(s) for categorisation, comma separated

The following extension status values are supported:

public = extension is published in official repository
experimental = extension is not published in official repository
unlisted = extension is not visible in official repository

The following file actions are supported:

create = create file if not exists
update = overwrite file if exists
delete = delete file if exists
optional = only for first installation
additional = only after first installation
careful = only if not modified
multi-language = use content from corresponding subfolder

Installation

Download extension and copy ZIP file into your system/extensions folder. Learn more about extensions.

Developer

Anna Svensson. Get help.

You might also like...
PhpCodeAnalyzer scans codebase and analyzes which non-built-in php extensions used

PhpCodeAnalyzer PhpCodeAnalyzer finds usage of different non-built-in extensions in your php code. This tool helps you understand how transportable yo

Helper to automatically load various Kirby extensions in a plugin

Autoloader for Kirby Helper to automatically load various Kirby extensions in a plugin Commerical Usage This package is free but if you use it in a co

Zephir is a compiled high level language aimed to the creation of C-extensions for PHP.

Zephir - is a high level programming language that eases the creation and maintainability of extensions for PHP. Zephir extensions are exported to C c

Library to build PHP extensions with C++

PHP-CPP The PHP-CPP library is a C++ library for developing PHP extensions. It offers a collection of well documented and easy-to-use classes that can

Modularize extensions using symlinks. Voted #1 Magento tool by @WebShopApps!
Modularize extensions using symlinks. Voted #1 Magento tool by @WebShopApps!

modman (Module Manager) Developing extensions for software that doesn't allow you to separate your files from core files, and keeping that extension u

A Magento 2 dashboard to display installed extensions. Read the blog post on some of the thinking behind it:
A Magento 2 dashboard to display installed extensions. Read the blog post on some of the thinking behind it:

Extension Dashboard for Magento 2 This module adds a dashboard to review all installed extensions in the Magento admin (Magento 2.3.0+ for now only).

 GitHub Actions for Magento 2 Extensions
GitHub Actions for Magento 2 Extensions

GitHub Actions for Magento 2 Extensions This repository's aim is to provide a set of open sourced GitHub actions to write better tested Magento 2 exte

List of Magento extensions with known security issues.
List of Magento extensions with known security issues.

Magento Vulnerability Database List of Magento 1 and 2 integrations with known security issues. Objective: easily identify insecure 3rd party software

A simple script to convert extensions from Magento1 to Magento2

ConvertM1M2 Background The purpose of this script is to automate as much as possible the initial conversion of a Magento 1 extension, and allow develo

Owner
Anna
Anna
Ied plugin composer - Inspired Plugin Composer: Create, publish and edit plugins from within Textpattern CMS.

ied_plugin_composer Create, publish and edit plugins from within Textpattern CMS. Creates a new page under the Extensions tab where you can edit and e

Stef Dawson 8 Oct 3, 2020
PracticeCore at the time created for DarkneesNetwork, and now i publish

Practice PracticeCore for PocketMine-MP 4.0.0 Description This is a beta version, It is very likely a drop in TPS or performance and clearly errors an

Claudio T. 4 Jul 24, 2022
This library uses GD and EXIF (optional) PHP extensions so make sure you have them installed.

simple and fast image processing class that can downscale, compress and convert images using php-gd native functions

Leon 8 Jul 15, 2022
PHP-nats publisher - This is a simple package to publish messages to Nats

Nats publisher This is a simple package to publish messages to Nats Installation You can install the package using the Composer package manager. You c

Evert Jan Hakvoort 7 Oct 24, 2022
This project backports features found in the latest PHP versions and provides compatibility layers for some extensions and functions

This project backports features found in the latest PHP versions and provides compatibility layers for some extensions and functions. It is intended to be used when portability across PHP versions and extensions is desired.

Symfony 2.2k Dec 29, 2022
GitHub action to set up PHP with extensions, php.ini configuration, coverage drivers, and various tools.

GitHub action to set up PHP with extensions, php.ini configuration, coverage drivers, and various tools.

Shivam Mathur 2.4k Jan 6, 2023
Custom code snippets and examples for SkyVerge-built WooCommerce extensions

SkyVerge WooCommerce Plugins Welcome to the wc-plugins-snippets repository! This repository stores code snippets related to SkyVerge WooCommerce plugi

SkyVerge 255 Nov 16, 2022
PhpCodeAnalyzer scans codebase and analyzes which non-built-in php extensions used

PhpCodeAnalyzer PhpCodeAnalyzer finds usage of different non-built-in extensions in your php code. This tool helps you understand how transportable yo

Sergey 92 Oct 19, 2022
Silverstripe-ideannotator - Generate docblocks for DataObjects, Page, PageControllers and (Data)Extensions

silverstripe-ideannotator This module generates @property, @method and @mixin tags for DataObjects, PageControllers and (Data)Extensions, so ide's lik

SilverLeague 44 Dec 21, 2022
Dubbox now means Dubbo eXtensions, and it adds features like RESTful remoting, Kyro/FST serialization, etc to the Dubbo service framework.

Dubbox now means Dubbo eXtensions. If you know java, javax and dubbo, you know what dubbox is :) Dubbox adds features like RESTful remoting, Kyro/FST

当当 4.9k Dec 27, 2022