KDE.org: Difference between revisions

From KDE Community Wiki
(Transform the Coding section into an entrypoint for web development focused on Hugo)
Line 21: Line 21:
=== Coding ===
=== Coding ===


There are a variety of options to get involved. KDE websites use either its own framework,
KDE primarily uses [https://gohugo.io Hugo] for its websites. In most cases, running a website locally consists of [https://invent.kde.org/websites/hugo-kde/-/wikis/getting-started installing Go and Hugo], and then:
Capacity, or one of the well known frameworks around the web, in particular Hugo. This includes:


* [https://invent.kde.org/websites/hugo-kde/-/wikis/home Hugo]
{{Input|1=<nowiki>
* [[KDE.org/mediawiki|MediaWiki]]
git clone <repository-link>
* [[KDE.org/Jekyll|Jekyll]]
cd <cloned-repository>
* [https://invent.kde.org/websites/capacity Capacity]
hugo server
* Drupal
</nowiki>}}
* [[KDE.org/phpBB|phpBB]]
* GOsa
* WordPress
* Redmine
* and more


KDE's web needs steadily change, and there is always room for coders who are able to contribute HTML, CSS or PHP. Most development occurs on [https://invent.kde.org/websites KDE invent].
A few special websites might have additional instructions on how to set up local development, like  the [https://invent.kde.org/websites/kde-org main KDE.org website], [https://invent.kde.org/websites/planet-kde-org Planet KDE], or the [https://invent.kde.org/documentation/develop-kde-org KDE Developer platform].


=== Discussion about kde websites ===
You can read more about developing with Hugo in the [https://invent.kde.org/websites/hugo-kde/-/wikis/home Hugo KDE repository wiki]. You might also want to check out the [https://invent.kde.org/websites/hugo-kde Hugo KDE] repository itself, as it's where most HTML/SCSS/JS development happens.


* IRC channel: #kde-www
To create a new Hugo website from scratch, you will want to read the [https://invent.kde.org/websites/hugo-kde-template Tutorial from scratch] and take a look at the [https://invent.kde.org/websites/hugo-kde-template Hugo KDE Website Template].
* Matrix channel: [https://webchat.kde.org/#/room/#freenode_#kde-www:matrix.org #kde-www]
 
* Mailinglist: [http://mail.kde.org/mailman/listinfo/kde-www kde-www] See http://kde.org/mailinglists/ for details
Lastly, to deploy our websites, we use [[Infrastructure/Continuous_Integration_System|Continuous Delivery (CD)]].
 
In addition to Hugo, we also use [[KDE.org/mediawiki|MediaWiki]] for our wikis, and [[KDE.org/Jekyll|Jekyll]] in some rare cases.
 
KDE's web needs steadily change, and there is always room for coders who are able to contribute HTML, SCSS, or JS. Contributing is a matter of:
 
* Visiting our [https://community.kde.org/Matrix Matrix] group: [https://go.kde.org/matrix/#/#kde-www:kde.org #kde-www:kde.org]
* Checking out the [https://invent.kde.org/websites list of KDE Websites]
* Start hacking!
 
=== Contacting the KDE Web team ===
 
* IRC channel: [irc://irc.libera.chat/kde-www #kde-www] (see [https://userbase.kde.org/IRC_Channels IRC Channels] for details)
* Matrix channel: [https://go.kde.org/matrix/#/#kde-www:kde.org #kde-www] (see [https://community.kde.org/Matrix Matrix] for details)
* Mailing list: [http://mail.kde.org/mailman/listinfo/kde-www KDE Mailing Lists] (see http://kde.org/mailinglists/ for details)


==  Documentation ==
==  Documentation ==

Revision as of 02:09, 5 October 2024

Konqi connects to the internet.

Introduction

KDE hosts a variety of websites, from the highly dynamic to info, documentation, and promotional sites. Volunteering involves very different aspects ranging from:

  • writing content
  • moderating in the forum
  • coordinating announcements
  • staying in contact with KDE developers to be aware of latest changes
  • administering dynamic sites like forum, wikis
  • watching out for spammers in those
  • enhancing functionality of the codebase
  • styling/designing the look of our sites
  • etc etc

The web team works closely with the promo and the sysadmin teams to make sure that KDE has a nice-looking and functional web presence.

Getting involved

Coding

KDE primarily uses Hugo for its websites. In most cases, running a website locally consists of installing Go and Hugo, and then:

git clone <repository-link>
cd <cloned-repository>
hugo server

A few special websites might have additional instructions on how to set up local development, like the main KDE.org website, Planet KDE, or the KDE Developer platform.

You can read more about developing with Hugo in the Hugo KDE repository wiki. You might also want to check out the Hugo KDE repository itself, as it's where most HTML/SCSS/JS development happens.

To create a new Hugo website from scratch, you will want to read the Tutorial from scratch and take a look at the Hugo KDE Website Template.

Lastly, to deploy our websites, we use Continuous Delivery (CD).

In addition to Hugo, we also use MediaWiki for our wikis, and Jekyll in some rare cases.

KDE's web needs steadily change, and there is always room for coders who are able to contribute HTML, SCSS, or JS. Contributing is a matter of:

Contacting the KDE Web team

Documentation

Setting up kde.org or other capacity based website on your computer

In order to do any development you will want to have a local version of the websites to test before committing. The instructions for how to set this up are here: Local Website Setup.

Documentation for MediaWiki

KDE's MediaWiki instance are using the family setup.

The theme is located at Aether-mediawiki gitlab and the extensions are the following:

  • ConfirmEdit
  • DocumentationTags
  • Contribution_Scores
  • DynamicPageList_(third-party)
  • EmbedVideo
  • ImageMap
  • ParserFunctions
  • MassEditRegex
  • LiquidThreads
  • SpamBlacklist
  • TitleBlacklist
  • UserMerge
  • Interwiki
  • Matomo
  • Nuke
  • And the translation bundle

Documentation for the Jekyll theme

You can find the documentation for the Jekyll theme in the project README and a Tutorial is available at KDE.org/Jekyll.

Documentation for the cdn export (webpack)

The code is available at websites/aether-sass.

Websites using this theme:

Documentation for Capacity

The current default framework for many *.kde.org domains is the /media-framework, aka Capacity. Any documentation about this should go here:

Warning

Probably outdated content below


Working with Wordpress on kde.org

Note: this is not reflective of the current state of kde.org but will be helpful once kde.org has been ported to neverland and wordpress. Wordpress Help

  • Discussion for a new site here

Themes

Site Maintainance

Meetings

The Team

See here

Sub projects