diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/about/about.bb (renamed from doc/about/about_hubzilla.bb) | 11 | ||||
-rw-r--r-- | doc/about/project.bb (renamed from doc/about/hubzilla_project.bb) | 0 | ||||
-rw-r--r-- | doc/addons.bb | 2 | ||||
-rw-r--r-- | doc/admin/administrator_guide.md | 57 | ||||
-rw-r--r-- | doc/developer/api_zot.bb | 2 | ||||
-rw-r--r-- | doc/hook/connection_remove.bb | 9 | ||||
-rw-r--r-- | doc/hook/legal_webbie.bb | 10 | ||||
-rw-r--r-- | doc/hook/legal_webbie_text.bb | 7 | ||||
-rw-r--r-- | doc/hooklist.bb | 6 | ||||
-rw-r--r-- | doc/member/member_guide.bb | 24 | ||||
-rw-r--r-- | doc/toc.html | 4 | ||||
-rw-r--r-- | doc/tutorials/personal_channel.html | 10 |
12 files changed, 74 insertions, 68 deletions
diff --git a/doc/about/about_hubzilla.bb b/doc/about/about.bb index e9485ffa6..2affe2cba 100644 --- a/doc/about/about_hubzilla.bb +++ b/doc/about/about.bb @@ -1,7 +1,7 @@ -[h3]What is Hubzilla?[/h3] +[h3]What is $Projectname?[/h3] $Projectname is a [b]free and open source[/b] set of web applications and services running on a special kind of web server, called a "hub", that can connect to other hubs in a decentralised network we like to call "the grid", providing sophisticated communications, identity, and access control services which work together seamlessly across domains and independent websites. It allows anybody to publicly or [b]privately[/b] publish content via "channels", which are the fundamental, cryptographically secured identities that provide authentication independently of the hubs which host them. This revolutionary liberation of online identity from individual servers and domains is called "nomadic identity", and it is powered by the Zot protocol, a new framework for decentralised access control with fine-grained, extensible permissions. -[h3]Right... so what is Hubzilla?[/h3] +[h3]Right... so what is $Projectname?[/h3] From the practical perspective of hub members who use the software, $Projectname offers a variety of familiar, integrated web apps and services, including: [ul] [li]social networking discussion threads[/li] @@ -15,14 +15,9 @@ While all of these apps and services can be found in other software packages, on [h3]Software Stack[/h3] The $Projectname software stack is a relatively standard webserver application written primarily in PHP/MySQL and [url=https://github.com/redmatrix/hubzilla/blob/master/install/INSTALL.txt]requiring little more than a web server, a MySQL-compatible database, and the PHP scripting language[/url]. It is designed to be easily installable by those with basic website administration skills on typical shared hosting platforms with a broad range of computing hardware. It is also easily extended via plugins and themes and other third-party tools. -[h3]Additional Resources and Links[/h3] -[list][*][url=http://hubzilla.org]Hubzilla project website[/url] -[*][url=https://github.com/redmatrix/hubzilla]Hubzilla core code repository[/url] -[*][url=https://github.com/redmatrix/hubzilla-addons]Hubzilla official addons repository[/url][/list] - [h3]Glossary[/h3] [dl terms="b"] -[*= hub] An instance of the Hubzilla software running on a standard web server +[*= hub] An instance of this software running on a standard web server [*= grid] The global network of hubs that exchange information with each other using the Zot protocol. diff --git a/doc/about/hubzilla_project.bb b/doc/about/project.bb index f9bc920f8..f9bc920f8 100644 --- a/doc/about/hubzilla_project.bb +++ b/doc/about/project.bb diff --git a/doc/addons.bb b/doc/addons.bb index 6fa9510f5..d49694030 100644 --- a/doc/addons.bb +++ b/doc/addons.bb @@ -23,7 +23,7 @@ [*] friendica - Friendica (DFRN) protocol. Under development. [*] frphotos - import photo albums from Friendica [*] gnusoc - GNU-Social (OStatus) protocol. Under development. -[*] hexit - headecimal conversion tool +[*] hexit - hexadecimal conversion tool [*] hubwall - send an admin email to all hub accounts [*] ijpost - crosspost to Insanejournal [*] irc - connect to IRC chatrooms diff --git a/doc/admin/administrator_guide.md b/doc/admin/administrator_guide.md index c233d8564..de64d5e8b 100644 --- a/doc/admin/administrator_guide.md +++ b/doc/admin/administrator_guide.md @@ -150,7 +150,7 @@ web-based administrative tools to function: #### Official addons ##### Installation -Navigate to your webThen you should clone the addon repository (separately). We'll give this repository a nickname of 'hzaddons'. You can pull in other hubzilla addon repositories by giving them different nicknames:: +Navigate to your website. Then you should clone the addon repository (separately). We'll give this repository a nickname of 'hzaddons'. You can pull in other hubzilla addon repositories by giving them different nicknames:: cd mywebsite util/add_addon_repo https://github.com/redmatrix/hubzilla-addons.git hzaddons @@ -162,7 +162,7 @@ For keeping the addon tree updated, you should be on your top level website dire util/update_addon_repo hzaddons Create searchable representations of the online documentation. You may do this - any time that the documentation is updated : +any time that the documentation is updated : cd mywebsite util/importdoc @@ -196,59 +196,35 @@ The installation script was originally designed for a small hardware server behi 1. `service apache2 reload` 1. Open your domain with a browser and step throught the initial configuration of $Projectname. -### Server Roles +### Recommended Addons -$Projectname can be configured in many different ways. One of the configurations available at installation is to select a 'server role'. There are currently three server roles. We highly recommend that you use 'standard' unless you have special needs. +We recommend the following addons be installed on all public sites: + nsfw - hide inappropriate posts/comments + superblock - block content from offensive channels -#### Basic +### Federation Addons -The 'basic' server role is designed to be relatively simple, and it doesn't present options -or complicated features. The hub admin may configure additional features at a site level. -This role is designed for simple social networking and social network federation. Many features -which do not federate easily have been removed, including (and this is somewhat important) -"nomadic identity". You may move a channel to or from a basic server, but you may not clone -it. Once moved, it becomes read-only on the origination site. No updates of any kind will be -provided. It is recommended that after the move, the original channel be deleted - as it is -no longer useable. The data remains only in case there are issues making a copy of the data. +Several web communities have begun to converge using common protocols. The protocols involved are somewhat limited in their abilities. The GNU-Social protocol for instance offers no privacy modes, and the Diaspora protocol is somewhat restrictive in what kinds of communications are allowed. All comments must be signed in a very unique manner by the original author. The ActivityPub protocol is also being considered and may be supported at a future date. No other existing protocol supports nomadic location as used by this project. This presents some support challenges as some features work with some networks and don't work with others. Nevertheless the federation protocols allow connections to be made to a much larger community of people worldwide. They are provided as addons. -This role is supported by the hubzilla community. +> diaspora - The Diaspora Protocol used by Diaspora and Friendica. You should enable 'Diaspora Statistics' (statistics_json) first to enable all the available features. -#### Standard +> gnusoc - The GNU-Social Protocol, used by GNU-Social, Mastodon and several other communities. This addon requires you first install the 'pubsubhubbub' service (also an addon). +Each member of your site must choose whether or not to allow these protocols individually as they may conflict with several desirable core features and abilities of this software (such as channel migration and cloning). They do this from their 'Settings -> Feature/Addon Settings' page. The administrator may also set the following: -The 'standard' server role is recommended for most sites. All features of the software are -available to everybody unless locked by the hub administrator. Some features will not federate -easily with other networks, so there is often an increased support burden explaining why -sharing events with Diaspora (for instance) presents a different experience on that network. -Additionally any member can enable "advanced" or "expert" features, and these may be beyond -their technical skill level. This may also result in an increased support burden. + util/config system.diaspora_allowed 1 + util/config system.gnusoc_allowed 1 -This role is supported by the hubzilla community. +and enable these protocols automatically for all newly created channels. -#### Pro -The 'pro' server role is primarily designed for communities which want to present a uniform -experience and be relieved of many federation support issues. In this role there is -**no federation with other networks**. Additional features **may** be provided, such -as channel ratings, premium channels, and e-commerce. -By default a channel may set a "techlevel" appropriate to their technical skill. Higher -levels provide more features. Everybody starts with techlevel 0 (similar to the 'basic' -role) where all complicated features are hidden from view. Increasing the techlevel provides -more advanced or complex features. + -The hub admin may also lock individual channels or their entire site at a defined techlevel -which provides an installation with a selection of advanced features consistent with the -perceived technical skills of the members. For instance, a community for horse racing might -have a different techlevel than a community for Linux kernel developers. - -This role is not supported by the hubzilla community. ### Techlevels -Techlevels is a unique feature of Hubzilla 'pro'. It is not available in other server_roles, although it expands on the concepts introduced in $Projectname 'basic'. - We've implemented several different mechanisms in order to reduce the apparent complexity and learning curve presented to new members. At the same time, we do not wish to limit any functionality for people who are able to grasp some slightly advanced technical technical features. The first mechanism was to move several features to an optional 'Features' page where they could be enabled at will; with the default interface kept somewhat lean. The problem we had now is that the number of features began to grow dramatically, and the Feature page is daunting in possibilities. There are also features present which probably should not be available to all members, but may be extremely useful to those with technical backgrounds. @@ -257,8 +233,7 @@ The techlevels seeeks to remedy this by grouping features within different level When a new member registers, their account is provided a techlevel setting of 0. On the account settings page they may change this to any available level. A higher level opens more advanced features and possible interactions. -The account administrator may also lock a particular level, lock a maximum level, or change/re-arrange the features available to any level. Those with the minimum level are typically not very exploratory and are unlikely to discover the advanced modes. This is by design. Those that look around and desire more interactions will find them. In the absence of administrator defaults they may choose any level. As they look at the features available to the level in question, it is generally expected that they will discover some features are beyond their comprehension and it is hoped they will back off to a level where the interface and features are comfortable to their skill level. This is somewhat experimental at present and for that reason is not part of the 'standard' server role. The standard server role is preset to level '5', and the basic server role is preset to level '0', with no possibility of change. Members in these roles may find themselves overwhelmed or underwhelmed by the feature set and complexity. - +The account administrator may also lock a particular level, lock a maximum level, or change/re-arrange the features available to any level. Those with the minimum level are typically not very exploratory and are unlikely to discover the advanced modes. This is by design. Those that look around and desire more interactions will find them. In the absence of administrator defaults they may choose any level. As they look at the features available to the level in question, it is generally expected that they will discover some features are beyond their comprehension and it is hoped they will back off to a level where the interface and features are comfortable to their skill level. ### Service Classes diff --git a/doc/developer/api_zot.bb b/doc/developer/api_zot.bb index ddca65b4d..a114c7c44 100644 --- a/doc/developer/api_zot.bb +++ b/doc/developer/api_zot.bb @@ -608,7 +608,7 @@ Optional: application or network name to display with item -- categories +- category comma separated categories for this item diff --git a/doc/hook/connection_remove.bb b/doc/hook/connection_remove.bb new file mode 100644 index 000000000..bd13ae5f2 --- /dev/null +++ b/doc/hook/connection_remove.bb @@ -0,0 +1,9 @@ +[h3]connection_remove[/h3] + +Called when deleting a connection. + + +Passed parameter array: + + 'channel_id' => channel_id of the channel removing the connection + 'abook_id' => abook_id of the connection being removed diff --git a/doc/hook/legal_webbie.bb b/doc/hook/legal_webbie.bb new file mode 100644 index 000000000..8c7d32d56 --- /dev/null +++ b/doc/hook/legal_webbie.bb @@ -0,0 +1,10 @@ +[h2]legal_webbie[/h2] + +Called when validating a channel address. By default the valid characters are +a-z,0-9,-,_, and . Uppercase ASCII characters are folded to lower and any invalid characters are stripped. + +Some federated networks require more restrictive rules. + +The hook is called with an array [ 'input' => (supplied text), 'output' => (validated text) ] + +A plugin will generally perform a regex filter or text operation on 'input' and provide the results in 'output'.
\ No newline at end of file diff --git a/doc/hook/legal_webbie_text.bb b/doc/hook/legal_webbie_text.bb new file mode 100644 index 000000000..32c74c93b --- /dev/null +++ b/doc/hook/legal_webbie_text.bb @@ -0,0 +1,7 @@ +[h2]legal_webbie_text[/h2] + +Returns a string describing the text rules applied to legal_webbie(). + +Called with an array [ 'text' => (descriptive text describing text character limitations) ] + +A plugin should return the description of the allowed characters and operation performed in the 'legal_webbie' hook to assist people when creating a new channel.
\ No newline at end of file diff --git a/doc/hooklist.bb b/doc/hooklist.bb index db606cbdc..ab9c0529d 100644 --- a/doc/hooklist.bb +++ b/doc/hooklist.bb @@ -320,6 +320,12 @@ Hooks allow plugins/addons to "hook into" the code at many points and alter the [zrl=[baseurl]/help/hook/jot_tool]jot_tool[/zrl] Deprecated and possibly obsolete. Allows one to add action buttons to the post editor. +[zrl=[baseurl]/help/hook/legal_webbie]legal_webbie[/zrl] + Called to validate a channel address + +[zrl=[baseurl]/help/hook/legal_webbie_text]legal_webbie_text[/zrl] + Provides an explanation of text/character restrictions for legal_webbie() + [zrl=[baseurl]/help/hook/load_pdl]load_pdl[/zrl] Called when we load a PDL file or description diff --git a/doc/member/member_guide.bb b/doc/member/member_guide.bb index 50f0b581b..9cc07d385 100644 --- a/doc/member/member_guide.bb +++ b/doc/member/member_guide.bb @@ -178,7 +178,9 @@ Connections in $Projectname can take on a great many different meanings. But let First, you need to find some channels to connect to. There are two primary ways of doing this. Firstly, setting the "Can send me their channel stream and posts" permission to "Anybody in this network" will bring posts from complete strangers to your matrix. This will give you a lot of public content and should hopefully help you find interesting, entertaing people, forums, and channels. -The next thing you can do is look at the Directory. The directory is available on every $Projectname website which means searching from your own site will bring in results from the entire network. You can search by name, interest, location and keyword. This is incomplete, so we'll improve this paragraph later. +The next thing you can do is look at the Directory. The directory is available on every $Projectname website which means searching from your own site will bring in results from the entire network. You can search by name, interest, location, and keyword. + +If you already know somebody's 'webbie' you can connect with them directly. A webbie looks just like an email address but refers to somebody in the open social web. In order to connect they must be using a compatible network protocol. By default, this software supports the 'zot' protocol, however additional protocols may be provided through plugins/addons. See below for more information on connecting to channels on other networks. To connect with other $Projectname channels: @@ -186,7 +188,15 @@ Visit their profile by clicking their photograph in the directory, matrix, or co You may also connect with any channel by visiting the "Connections" page of your site or the Directory and typing their "webbie" into the "Add New Connection" field. Use this method if somebody tells you their webbie and you wish to connect with them. A webbie looks like an email address; for example "bob@example.com". The process is the same as connecting via the "Connect" button - you will then be taken to the connection editor to set permissions. -[h4] Block/Ignore/Archive/Hide channels [/h4] +To connect with channels on other networks: + +The process for connecting to channels on other networks (such as GNU-Social, Mastodon, and Diaspora) is similar - type their "webbie" into the "Add New Connections" box on the "Connections" page. Before you do this however, please visit your Settings page (Feature/Addon Settings) and ensure that the relevant protocol (Diaspora or GNU-Social) is provided on your hub and [b][i]activated[/i] for your channel[/b]. These networks/protocols do not support account migration and location independence so if you move location or clone your channel elsewhere, communications with these connections may fail. For this reason these protocols are not activated by default, but only through your consent. Activating these protocols involves an important decision between communicating with friends on these networks or providing fail-safe account resilience if your server fails. + +To connect with RSS feeds: + +Your hub admin may allow connecting to RSS feeds. The process for connecting to an RSS feed is the same, exept type (or paste) the URL of the feed into the "Add New Connection" box. Feeds are only processed once or twice per day and your hub admin may impose limits on how many feeds you may add. + +[h4]Block/Ignore/Archive/Hide channels [/h4] Channels in your address book can have statuses such as [i]blocked[/i], [i]ignored[/i], [i]archived[/i] and [i]hidden[/i]. From your connections page you can see tabs that display the channels with those statuses. From your edit connection pages you can change the statuses of a channel. @@ -279,7 +289,7 @@ We highly recommend that you use the "typical social network" settings when you [i]Note:[/i] Plugins/addons may provide special permission settings, so you may be offered additional permission settings beyond what is described here. -If you have set any of these permissions to "only those I specifically allow", you may specify indivudal permissions on the connnection edit screen. +If you have set any of these permissions to "only those I specifically allow", you may specify individual permissions on the connnection edit screen. [h4]Affinity[/h4] @@ -687,14 +697,8 @@ This places a block named "contributors" in this region. Additionally The variable [var=wrap]none[/var] in a block removes the wrapping div element from the block. [h4]Widgets[/h4] -Widgets are executable apps provided by the system which you can place on your page. Some widgets take arguments which allows you to tailor the widget to your purpose. (TODO: list available widgets and arguments). The base system provides - -[code] - profile - widget which duplicates the profile sidebar of your channel page. This widget takes no arguments - tagcloud - provides a tag cloud of categories - count - maximum number of category tags to list +Widgets are executable apps provided by the system which you can place on your page. Some widgets take arguments which allows you to tailor the widget to your purpose. System widgets are listed [url=help/Widgets]here[/url]. Widgets can also ve created by plugins, themes, or your site administrator to provide additional functionality. -[/code] Widgets and arguments are specified with the 'widget' and 'var' tags. [code] diff --git a/doc/toc.html b/doc/toc.html index 78cc74979..9e34fc8d9 100644 --- a/doc/toc.html +++ b/doc/toc.html @@ -7,8 +7,8 @@ </div> <div id="about" class="doco-section"> <div class="flex-column"> - <a class="nav-link" href="/help/about/about_hubzilla">About Hubzilla</a> - <a class="nav-link" href="/help/about/hubzilla_project">Hubzilla project</a> + <a class="nav-link" href="/help/about/about">About</a> + <a class="nav-link" href="/help/about/project">Project</a> <a class="nav-link" href="/help/about/about_hub">About this hub</a> </div> </div> diff --git a/doc/tutorials/personal_channel.html b/doc/tutorials/personal_channel.html index f2ad87077..9dbc2aaec 100644 --- a/doc/tutorials/personal_channel.html +++ b/doc/tutorials/personal_channel.html @@ -6,7 +6,7 @@ to a personal channel in a natural way.</p> <h3 id="Create_a_new_channel">Create a new channel</h3> <p>When you log in for the first time after registering, you must create a channel. -(Alternatively you can load https://grid.reticu.li/new_channel)</p> +(Alternatively you can visit https://your_website/new_channel)</p> <p><img class="img-responsive" src="/help/tutorials/assets/c9a880cc82ffa1f7c2f460397bb083bf7dc2a2b8f065e64da598b45b4a2b.png" alt="image"></p> @@ -76,7 +76,7 @@ so you can specify exactly who can access this post.</p> <h3 id="Use_an_uploaded_image_as_a_channel_cover_photo">Use an uploaded image as a channel cover photo</h3> <p>One way to add some pizzazz your channel is to add a cover photo that visitors will -see when they load your channel page. Hubzilla's integrated cloud file system +see when they load your channel page. The integrated cloud file system allows you to choose an existing photo for this purpose.</p> <p>Visit your photos in the <strong>Photos</strong> app</p> @@ -99,9 +99,9 @@ channel page will fade in as you scroll down.</p> <h3 id="Make_a_connection">Make a connection</h3> -<p>Making connections between channels to share things is what Hubzilla is all about. +<p>Making connections between channels to share things is what social communications are all about. Making a connection is simple. If you do not already know how to reach a channel's home -page, you might try a directory search by opening the <strong>Directory</strong> link on the right +page, you might try a directory search by opening the <strong>Directory</strong> link from the menu on the right side of the top navbar.</p> <p><img class="img-responsive" src="/help/tutorials/assets/ef78bc6aa3fafebd46f353514c907b3fdfe019918fc5553bb3f31388a36f.png" alt="image"></p> @@ -160,4 +160,4 @@ editor by pressing the edit button beside the <strong>Delete</strong> button.</p <p><img class="img-responsive" src="/help/tutorials/assets/c4cad3e4c356dd2a227df79bd4dc6d47edf1b66ea243f005b6b452ec366b.png" alt="image"></p> -
\ No newline at end of file + |