mirror of https://gitlab.com/bashrc2/epicyon
				
				
				
			
		
			
				
	
	
	
		
			2.8 KiB
		
	
	
	
	
			
		
		
	
	
			2.8 KiB
		
	
	
	
	
Epicyon Project Goals
- A minimal ActivityPub server, comparable to an email MTA
 - "Small Tech" ethos. Not many accounts per instance
 - Centering people and personal computing, not corporate or organizational accounts abstracting people away
 - AGPLv3+
 - Server-to-server and client-to-server protocols supported
 - Implemented in a common language (Python 3)
 - Keyword filtering
 - 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
 - Sharings collection, similar to the gnusocial sharings plugin
 - Quotas for received posts per day, per domain and per account
 - Hellthread 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
 - 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
 - Ability to delete or hide specific conversation threads
 - Commandline interface
 - Simple web interface
 - Designed for intermittent connectivity. Assume network disruptions
 - Limited visibility of follows/followers
 - Suitable for single board computers
 - Progressive Web App interface. Doesn't need native apps on mobile
 - Integration with RSS feeds, for reading news or blogs
 - Moderation capabilities for posts, hashtags and blocks
 
Features which won't be implemented
The following are considered antifeatures 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
 - 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
 - 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