2019-06-04 22:59:41 +02:00
# YunoHost for non-profit
## Table of Contents
2019-06-25 23:33:35 +02:00
* [Introduction ](#introduction )
* [Who ](#who )
* [What ](#what )
* [When ](#when )
* [Where ](#where )
* [Why ](#why )
* [How ](#how )
* [Conclusion ](#conclusion )
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
## Introduction
2019-06-04 22:59:41 +02:00
The object of this document is to present a specific use of [YunoHost ](https://yunohost.org/ ) for non-profit organizations.
2019-06-25 23:33:35 +02:00
## Who
2019-06-04 22:59:41 +02:00
Non-profit organizations, NGO or any kind of association.
2019-06-25 23:33:35 +02:00
## What
2019-06-04 22:59:41 +02:00
Usually non-profit organizations need to provide several services to several publics:
* Board of Directors / Steering Committee / Volunteers with:
2019-06-25 23:33:35 +02:00
* [Mails ](#mails )
* [Calendar ](#calendar )
* [Contact ](#contact )
* [Shared files / Drive ](#shared-files )
* [Instant communication ](#instant-communication )
* [Intranet / knowledge database ](#intranet )
* [ERP / Accounting ](#erp-accounting )
2019-06-04 22:59:41 +02:00
* Members with:
2019-06-25 23:33:35 +02:00
* [Public website with private and individual access ](#public-web-site )
* [Membership ](#membership )
* [Events registrations ](#events-registrations )
* [Mailings ](#newsletter-mailing )
* [Forum ](#forum )
2019-06-04 22:59:41 +02:00
* Public with:
2019-06-25 23:33:35 +02:00
* [Public website ](#public-web-site )
* [Newsletter ](#newsletter-mailing )
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
## When
2019-06-04 22:59:41 +02:00
When ready to move forward.
2019-06-25 23:33:35 +02:00
## Where
2019-06-04 22:59:41 +02:00
You YunoHost for non profit can be hosted in several places:
* Own hosting on a server, computer or Raspberry behind ASDL, SDSL or Fiber
* [Chatons ](https://chatons.org ), [librehosters ](https://framagit.org/librehosters/awesome-librehosters ) hosting services
* Commercial hosting services providing Debian virtual machine
2019-06-25 23:33:35 +02:00
## Why
2019-06-04 22:59:41 +02:00
YunoHost can provide mostly all needs of a non-profit organization.
Keeping their data on their own.
2019-06-25 23:33:35 +02:00
## How
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
### YunoHost
2019-06-04 22:59:41 +02:00
YunoHost is a Debian GNU/Linux based distribution packaged with free software that automates the installation of a personal web server. The purpose of YunoHost is to allow users to easily host their own web services by enabling a simple point-and-click web interface for installing various web apps.
![](https://upload.wikimedia.org/wikipedia/commons/0/07/Yunohost_user_portal.png)
Out of the box YunoHost provide:
* A system of application
* A web interface
* A command-line interface (CLI): Moulinette
2020-09-15 13:57:31 +02:00
* A web server: NGINX
2019-06-04 22:59:41 +02:00
* A DNS server: Dnsmasq
* A database: MariaDB
* A backup system
* An SSO : SSOwat
* OpenLDAP
* Email:
* SMTP: Postfix
* IMAP & POP3: Dovecot
* An antispam: rspamd,rmilter
* Instant messaging XMPP server: Metronome IM
2019-06-25 23:33:35 +02:00
### Domain Name
2019-06-04 22:59:41 +02:00
The first thing you will need to implement a YunoHost server is a domain name. The domain name can usually be provided with your hosting service.
2019-06-25 23:33:35 +02:00
### Mails
2019-06-04 22:59:41 +02:00
From scratch, YunoHost provide mail system available using POP/IMAP/SMTP.
2019-07-14 16:41:59 +02:00
Mails accounts will be managed using the web interface or the command line. Created accounts are stored in OpenLDAP.
2019-06-04 22:59:41 +02:00
Additional package can be installed to provide more functionality to the YunoHost mail system:
* Webmail using [Roundcube ](https://github.com/YunoHost-Apps/roundcube_ynh ), [Rainloop ](https://github.com/YunoHost-Apps/rainloop_ynh )
* ActiveSync using [Z-Push ](https://github.com/YunoHost-Apps/z-push_ynh )
* Internal distribution group using [Mailman ](https://github.com/YunoHost-Apps/mailman_ynh )
2019-06-25 23:33:35 +02:00
### Calendar
2019-06-04 22:59:41 +02:00
To provide personal or shared calendars you will need to install:
* [Nextcloud ](https://github.com/YunoHost-Apps/nextcloud_ynh )
* [Baikal ](https://github.com/YunoHost-Apps/baikal_ynh )
2019-06-25 23:33:35 +02:00
### Contact
2019-06-04 22:59:41 +02:00
To provide personal contact system you will need to install:
* [Nextcloud ](https://github.com/YunoHost-Apps/nextcloud_ynh )
* [Baikal ](https://github.com/YunoHost-Apps/baikal_ynh )
2019-06-25 23:33:35 +02:00
### Shared files
2019-06-04 22:59:41 +02:00
To provide shared files system: personal and shared drive, you can install [Nextcloud ](https://github.com/YunoHost-Apps/nextcloud_ynh ).
2019-07-14 16:41:59 +02:00
Files will be available from a web interface or using a synchronization client.
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
### Instant communication
2019-06-04 22:59:41 +02:00
2019-07-14 16:41:59 +02:00
Out of the box, YunoHost provide an XMPP server, for which you can install a web client: [Jappix ](https://github.com/YunoHost-Apps/jappix_ynh ).
2019-06-04 22:59:41 +02:00
You can also install a matrix server:
* The server: [Synapse ](https://github.com/YunoHost-Apps/synapse_ynh )
2020-04-14 06:24:41 +02:00
* A web client: [Riot ](https://github.com/YunoHost-Apps/riot_ynh )
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
### Intranet
2019-06-04 22:59:41 +02:00
For an non-profit organization a good way to implement an intranet is to provide a wiki to let internal users read, edit and add content. Here are some packages to implement a wiki:
* [DokuWiki ](https://github.com/YunoHost-Apps/docuwiki_ynh ) using wiki syntax
* [Wiki.js ](https://github.com/YunoHost-Apps/wikijs_ynh ) using markdown syntax
2019-06-25 23:33:35 +02:00
### ERP / Accounting
2019-06-04 22:59:41 +02:00
At some time a non-profit organization could need an accounting/erp system, here are two propositions:
* [OpenERP/Odoo ](https://github.com/YunoHost-Apps/libreerp_ynh )
* [Dolibarr ](https://github.com/YunoHost-Apps/dolibarr_ynh )
2019-06-25 23:33:35 +02:00
### Public Web Site
2019-06-04 22:59:41 +02:00
There are several way to implement a Public Web Site:
* Simple html, css, etc... Website using: [Custom Webapp ](https://github.com/YunoHost-Apps/my_webapp_ynh )
* Using a CMS (Content Management System) like [Wordpress ](https://github.com/YunoHost-Apps/_ynh ), [Drupal ](https://github.com/YunoHost-Apps/drupal_ynh ) , [Grav ](https://github.com/YunoHost-Apps/grav_ynh ), [PluXml ](https://github.com/YunoHost-Apps/pluxml_ynh )
But we will propose something more powerful: [CiviCRM on Drupal 7 ](https://github.com/YunoHost-Apps/civicrm_drupal7_ynh ):
* Drupal that is a powerful open source content management framework
* with CiviCRM that is an open source constituent relationship management for non-profits
2019-06-25 23:33:35 +02:00
#### Membership
2019-06-04 22:59:41 +02:00
With CiviCRM you can provide online membership and payment.
2019-06-25 23:33:35 +02:00
#### Events Registrations
2019-06-04 22:59:41 +02:00
2019-07-14 16:41:59 +02:00
With CiviCRM, you can provide an online diary to let members or public register for free or with a payment.
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
#### Newsletter/Mailing
2019-06-04 22:59:41 +02:00
2019-07-14 16:41:59 +02:00
Best way to manage that is using CiviCRM and its mailing module.
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
### Forum
2019-06-04 22:59:41 +02:00
2019-07-14 16:41:59 +02:00
You have several choices, or having an integrated forum in Drupal or using a dedicated forum system like [Flarum ](https://github.com/YunoHost-Apps/flarum_ynh ).
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
### Backup
2019-06-04 22:59:41 +02:00
YunoHost provide is own backup system. Before any package upgrade, YunoHost backup the current version of the package and automaticaly restore it if the upgrade fails.
2020-09-14 11:23:05 +02:00
YunoHost backup are stored localy in `/home/yunohost.backup/archives` .
2019-06-04 22:59:41 +02:00
But for production, localy stored backup are not enough, so you will need to implement aditional backup strategies:
* Backup of the the Virtual Machine if provided by the hosting system.
* [Archivist ](https://github.com/YunoHost-Apps/archivist_ynh ) is an automatic backup system for your server. Your backups can be send to many other places, local or distant.
2019-07-14 16:41:59 +02:00
* [Borg ](https://github.com/YunoHost-Apps/borg_ynh ) and [Borg Server ](https://github.com/YunoHost-Apps/borgserver_ynh ) allow to externalize backups.
2019-06-04 22:59:41 +02:00
* [Fallback ](https://github.com/YunoHost-Apps/fallback_ynh ), if you have two yunohost servers, provide a way to have a secondary server which you can used if your main server goes down. This secondary server will allow you to deploy a copy of your server to bring back your YunoHost during your break down.
2019-06-25 23:33:35 +02:00
### Go further
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
#### Federated Photo Gallery
2019-06-04 22:59:41 +02:00
* [Pixelfed ](https://github.com/YunoHost-Apps/pixelfed_ynh )
2019-06-25 23:33:35 +02:00
#### Federated Audio Gallery
2019-06-04 22:59:41 +02:00
* [Reel2Bits ](https://github.com/YunoHost-Apps/reel2bits_ynh )
2019-07-13 14:55:04 +02:00
* [Funkwhale ](https://github.com/YunoHost-Apps/funkwhale_ynh )
2019-06-04 22:59:41 +02:00
2019-06-25 23:33:35 +02:00
#### Federated Video Gallery
2019-06-04 22:59:41 +02:00
* [PeerTube ](https://github.com/YunoHost-Apps/peertube_ynh )
2019-06-25 23:33:35 +02:00
#### Federated Social Networking
2019-06-04 22:59:41 +02:00
* [Mastodon ](https://github.com/YunoHost-Apps/mastodon_ynh )
* [Pleroma ](https://github.com/YunoHost-Apps/pleroma_ynh )
* [Mobilizon ](https://github.com/YunoHost-Apps/mobilizon_ynh )
2019-06-25 23:33:35 +02:00
#### Federated Blog
2019-06-04 22:59:41 +02:00
* [Plume ](https://github.com/YunoHost-Apps/plume_ynh )
* [Writefreely ](https://github.com/YunoHost-Apps/writefreely_ynh )
2019-06-25 23:33:35 +02:00
#### Chat
2019-06-04 22:59:41 +02:00
* [Mattermost ](https://github.com/YunoHost-Apps/mattermost_ynh )
2019-06-25 23:33:35 +02:00
## Conclusion
2019-06-04 22:59:41 +02:00
YunoHost can cover 99% of the needs of non-profit organizations, allowing them to own and protect their data, choose applications they want to use.
2020-03-28 06:54:10 +01:00
And if one is not available, they can [package it for YunoHost ](/contributordoc ), it's very simple.