mirror of https://gitlab.com/bashrc2/epicyon
Merge branch 'features/kensanata/typos' into 'main'
Typos in various README files fixed See merge request bashrc2/epicyon!21main
commit
ac01184e53
|
@ -4,7 +4,7 @@
|
|||
|
||||
<img src="https://epicyon.net/img/mobile.jpg" width="30%"/>
|
||||
|
||||
Epicyon is a modern [ActivityPub](https://www.w3.org/TR/activitypub) compliant server implementing both S2S and C2S protocols and sutable for installation on single board computers. It includes features such as moderation tools, post expiry, content warnings, image descriptions, news feed and perimeter defense against adversaries. It contains *no javascript* and uses HTML+CSS with a Python backend.
|
||||
Epicyon is a modern [ActivityPub](https://www.w3.org/TR/activitypub) compliant server implementing both S2S and C2S protocols and suitable for installation on single board computers. It includes features such as moderation tools, post expiry, content warnings, image descriptions, news feed and perimeter defense against adversaries. It contains *no JavaScript* and uses HTML+CSS with a Python backend.
|
||||
|
||||
[Project Goals](README_goals.md) - [Commandline interface](README_commandline.md) - [Customizations](README_customizations.md) - [Code of Conduct](code-of-conduct.md)
|
||||
|
||||
|
@ -234,7 +234,7 @@ Please be aware that such installations will not federate with ordinary fedivers
|
|||
|
||||
## Custom Fonts
|
||||
|
||||
If you want to use a particular font then copy it into the *fonts* directory, rename it as *custom.ttf/woff/woff2/otf* and then restart the epicyon daemon.
|
||||
If you want to use a particular font then copy it into the *fonts* directory, rename it as *custom.ttf/woff/woff2/otf* and then restart the Epicyon daemon.
|
||||
|
||||
``` bash
|
||||
systemctl restart epicyon
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Commandline Admin
|
||||
# Command-line Admin
|
||||
|
||||
This system can be administrated from the commandline.
|
||||
This system can be administrated from the command-line.
|
||||
|
||||
## Account Management
|
||||
|
||||
|
@ -52,7 +52,7 @@ To remove an account (be careful!):
|
|||
python3 epicyon.py --rmgroup nickname@domain
|
||||
```
|
||||
|
||||
Setting avatar or changing background is the same as for any other account on the system. You can also moderate a group, applying filters, blocks or a perimeter, in the same way as for other acounts.
|
||||
Setting avatar or changing background is the same as for any other account on the system. You can also moderate a group, applying filters, blocks or a perimeter, in the same way as for other accounts.
|
||||
|
||||
## Defining a perimeter
|
||||
|
||||
|
@ -76,7 +76,7 @@ The password is for the client to obtain access to the server.
|
|||
|
||||
You may or may not need to use the *--port*, *--https* and *--tor* options, depending upon how your server was set up.
|
||||
|
||||
Unfollowing is silimar:
|
||||
Unfollowing is similar:
|
||||
|
||||
``` bash
|
||||
python3 epicyon.py --nickname [yournick] --domain [name] --unfollow othernick@domain --password [c2s password]
|
||||
|
@ -131,7 +131,7 @@ To view the public posts for a person:
|
|||
python3 epicyon.py --posts nickname@domain
|
||||
```
|
||||
|
||||
If you want to view the raw json:
|
||||
If you want to view the raw JSON:
|
||||
|
||||
``` bash
|
||||
python3 epicyon.py --postsraw nickname@domain
|
||||
|
@ -156,7 +156,7 @@ xdot socnet.dot
|
|||
|
||||
## Delete posts
|
||||
|
||||
To delete a post which you wrote you must first know its url. It is usually something like:
|
||||
To delete a post which you wrote you must first know its URL. It is usually something like:
|
||||
|
||||
``` text
|
||||
https://yourDomain/users/yourNickname/statuses/number
|
||||
|
@ -177,7 +177,7 @@ Another complication of federated deletion is that the followers collection may
|
|||
|
||||
## Announcements/repeats/boosts
|
||||
|
||||
To announce or repeat a post you will first need to know it's url. It is usually something like:
|
||||
To announce or repeat a post you will first need to know it's URL. It is usually something like:
|
||||
|
||||
``` text
|
||||
https://domain/users/name/statuses/number
|
||||
|
@ -192,7 +192,7 @@ python3 epicyon.py --nickname [yournick] --domain [name] \
|
|||
|
||||
## Like posts
|
||||
|
||||
To like a post you will first need to know it's url. It is usually something like:
|
||||
To like a post you will first need to know it's URL. It is usually something like:
|
||||
|
||||
``` text
|
||||
https://domain/users/name/statuses/number
|
||||
|
@ -240,7 +240,7 @@ Whether you are using the **--federate** option to define a set of allowed insta
|
|||
python3 epicyon.py --nickname yournick --domain yourdomain --block somenick@somedomain --password [c2s password]
|
||||
```
|
||||
|
||||
This blocks at the earliest possble stage of receiving messages, such that nothing from the specified account will be written to your inbox.
|
||||
This blocks at the earliest possible stage of receiving messages, such that nothing from the specified account will be written to your inbox.
|
||||
|
||||
Or to unblock:
|
||||
|
||||
|
@ -313,7 +313,7 @@ python3 epicyon.py --nickname [admin nickname] --domain [mydomain] \
|
|||
--password [c2s password]
|
||||
```
|
||||
|
||||
This extends the ActivityPub client-to-server protocol to include activities called *Delegate* and *Role*. The json looks like:
|
||||
This extends the ActivityPub client-to-server protocol to include activities called *Delegate* and *Role*. The JSON looks like:
|
||||
|
||||
``` json
|
||||
{ 'type': 'Delegate',
|
||||
|
@ -343,7 +343,7 @@ python3 epicyon.py --nickname [nick] --domain [mydomain] \
|
|||
|
||||
The level value is a percentage which indicates how proficient you are with that skill.
|
||||
|
||||
This extends the ActivityPub client-to-server protocol to include an activity called *Skill*. The json looks like:
|
||||
This extends the ActivityPub client-to-server protocol to include an activity called *Skill*. The JSON looks like:
|
||||
|
||||
``` json
|
||||
{ 'type': 'Skill',
|
||||
|
@ -365,7 +365,7 @@ python3 epicyon.py --nickname [nick] --domain [mydomain] \
|
|||
|
||||
The status value can be any string, and can become part of organization building by combining it with roles and skills.
|
||||
|
||||
This extends the ActivityPub client-to-server protocol to include an activity called *Availability*. "Status" was avoided because of te possibility of confusion with other things. The json looks like:
|
||||
This extends the ActivityPub client-to-server protocol to include an activity called *Availability*. "Status" was avoided because of the possibility of confusion with other things. The JSON looks like:
|
||||
|
||||
``` json
|
||||
{ 'type': 'Availability',
|
||||
|
@ -377,7 +377,7 @@ This extends the ActivityPub client-to-server protocol to include an activity ca
|
|||
|
||||
## Shares
|
||||
|
||||
This system includes a feature for bartering or gifting (i.e. common resource pooling or exchange without money), based upon the earlier Sharings plugin made by the Las Indias group which existed within GNU Social. It's intended to operate at the municipal level, sharing physical objects with people in your local vicinity. For example, sharing gardening tools on a street or a 3D printer between makerspaces.
|
||||
This system includes a feature for bartering or gifting (i.e. common resource pooling or exchange without money), based upon the earlier Sharings plugin made by the Las Indias group which existed within GNU Social. It's intended to operate at the municipal level, sharing physical objects with people in your local vicinity. For example, sharing gardening tools on a street or a 3D printer between maker-spaces.
|
||||
|
||||
To share an item.
|
||||
|
||||
|
@ -385,7 +385,7 @@ To share an item.
|
|||
python3 epicyon.py --itemName "spanner" --nickname [yournick] --domain [yourdomain] --summary "It's a spanner" --itemType "tool" --itemCategory "mechanical" --location [yourCity] --duration "2 months" --itemImage spanner.png --password [c2s password]
|
||||
```
|
||||
|
||||
For the duration of the share you can use hours,days,weeks,months or years.
|
||||
For the duration of the share you can use hours, days, weeks, months, or years.
|
||||
|
||||
To remove a shared item:
|
||||
|
||||
|
|
|
@ -28,4 +28,4 @@ Extra emoji can be added to the *emoji* directory and you should then update the
|
|||
|
||||
## Themes
|
||||
|
||||
If you want to create a new theme then the functions for that are within *theme.py*. These functions take the css templates and modify them. You will need to edit *themesDropdown* within *webinterface.py* and add the appropriate translations for the theme name. Themes are selectable from the profile screen of the administrator.
|
||||
If you want to create a new theme then the functions for that are within *theme.py*. These functions take the CSS templates and modify them. You will need to edit *themesDropdown* within *webinterface.py* and add the appropriate translations for the theme name. Themes are selectable from the profile screen of the administrator.
|
||||
|
|
|
@ -10,22 +10,22 @@
|
|||
* Attention to accessibility and should be usable in lynx with a screen reader
|
||||
* Remove metadata from attached images, avatars and backgrounds
|
||||
* Support for multiple themes, with ability to create custom themes
|
||||
* Being able to build crowdsouced organizations with roles and skills
|
||||
* Being able to build crowd-sourced organizations with roles and skills
|
||||
* Sharings collection, similar to the gnusocial sharings plugin
|
||||
* Quotas for received posts per day, per domain and per account
|
||||
* Hellthread detection and removal
|
||||
* Hell-thread detection and removal
|
||||
* Instance and account level federation lists
|
||||
* Support content warnings, reporting and blocking
|
||||
* http signatures and basic auth
|
||||
* json-LD signatures on outgoing posts, optional on incoming
|
||||
* Compatible with http (onion addresses, i2p), https and hypercore
|
||||
* JSON-LD signatures on outgoing posts, optional on incoming
|
||||
* Compatible with HTTP (onion addresses, i2p), HTTPS and hypercore
|
||||
* Minimal dependencies
|
||||
* Dependencies are maintained Debian packages
|
||||
* Data minimization principle. Configurable post expiry time
|
||||
* Likes and repeats only visible to authorized viewers
|
||||
* ReplyGuy mitigation - maxmimum replies per post or posts per day
|
||||
* Reply Guy mitigation - maximum replies per post or posts per day
|
||||
* Ability to delete or hide specific conversation threads
|
||||
* Commandline interface
|
||||
* Command-line interface
|
||||
* Simple web interface
|
||||
* Designed for intermittent connectivity. Assume network disruptions
|
||||
* Limited visibility of follows/followers
|
||||
|
@ -36,17 +36,17 @@
|
|||
|
||||
**Features which won't be implemented**
|
||||
|
||||
The following are considered antifeatures of other social network systems, since they encourage dysfunctional social interactions.
|
||||
The following are considered anti-features of other social network systems, since they encourage dysfunctional social interactions.
|
||||
|
||||
* Features designed to scale to large numbers of accounts (say, more than 20 active users)
|
||||
* Trending hashtags, or trending anything
|
||||
* Ranking, rating or recommending mechanisms for posts or people (other than likes or repeats/boosts)
|
||||
* Geolocation features
|
||||
* Geo-location features
|
||||
* Algorithmic timelines (i.e. non-chronological)
|
||||
* Direct payment mechanisms, although integration with other services may be possible
|
||||
* Any variety of blockchain
|
||||
* Sponsored posts
|
||||
* Enterprise features for use cases applicable only to businesses. Epicyon could be used in a small business, but it's not primarily designed for that
|
||||
* Collaborative editing of posts, although you could do that outside of this system using etherpad, or similar
|
||||
* Collaborative editing of posts, although you could do that outside of this system using Etherpad, or similar
|
||||
* Anonymous posts from random internet users published under a single generic instance account
|
||||
* Hierarchies of roles beyond ordinary moderation, such as X requires special agreement from Y before sending a post
|
||||
|
|
Loading…
Reference in New Issue