diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 160 |
1 files changed, 122 insertions, 38 deletions
@@ -4,14 +4,69 @@ | |||
4 | 4 | ||
5 | # Ferdi | 5 | # Ferdi |
6 | 6 | ||
7 | [![Backers on Open Collective](https://opencollective.com/getferdi/backers/badge.svg)](#backers) [![Sponsors on Open Collective](https://opencollective.com/getferdi/sponsors/badge.svg)](#sponsors) [![Build Status Windows](https://ci.appveyor.com/api/projects/status/2ckfbmoxp36fye5b?svg=true)](https://ci.appveyor.com/project/kytwb/ferdi) | 7 | <p align="center"> |
8 | [![Build Status Mac & Linux](https://travis-ci.org/getferdi/ferdi.svg?branch=master)](https://travis-ci.org/getferdi/ferdi) | 8 | <a href="#backers-via-opencollective"><img alt="Open Collective backers" src="https://img.shields.io/opencollective/backers/getferdi?logo=open-collective"></a> |
9 | <a href="#sponsors-via-opencollective"><img alt="Open Collective sponsors" src="https://img.shields.io/opencollective/sponsors/getferdi?logo=open-collective"></a> | ||
10 | <a href="https://ci.appveyor.com/project/kytwb/ferdi"><img alt="Build Status Windows" src="https://img.shields.io/appveyor/ci/kytwb/ferdi/master?logo=appveyor"></a> | ||
11 | <a href="https://travis-ci.org/getferdi/ferdi"><img alt="Build Status Mac & Linux" src="https://img.shields.io/travis/getferdi/ferdi/master?logo=travis"></a> | ||
12 | </p> | ||
9 | 13 | ||
10 | π€΄π½ Hard-fork of [Franz](https://github.com/meetfranz/franz), adding awesome features and removing unwanted ones. | 14 | π€΄π½ Hard-fork of [Franz](https://github.com/meetfranz/franz), adding awesome features and removing unwanted ones. |
11 | 15 | ||
16 | ### Table of contents | ||
17 | |||
18 | <details> | ||
19 | <summary>Toggle navigation</summary> | ||
20 | |||
21 | - [Ferdi](#ferdi) | ||
22 | - [Table of contents](#table-of-contents) | ||
23 | - [What is Ferdi?](#what-is-ferdi) | ||
24 | - [What does Ferdi look like?](#what-does-ferdi-look-like) | ||
25 | - [Download Ferdi](#download-ferdi) | ||
26 | - [Or use homebrew (macOS only)](#or-use-homebrew-macos-only) | ||
27 | - [Or use AUR (Arch Linux)](#or-use-aur-arch-linux) | ||
28 | - [Ferdi-specific Features](#ferdi-specific-features) | ||
29 | - [Development](#development) | ||
30 | - [Install OS dependencies](#install-os-dependencies) | ||
31 | - [Node.js](#nodejs) | ||
32 | - [Git](#git) | ||
33 | - [Debian/Ubuntu](#debianubuntu) | ||
34 | - [Fedora](#fedora) | ||
35 | - [Windows](#windows) | ||
36 | - [Clone repository with submodule](#clone-repository-with-submodule) | ||
37 | - [Install dependencies](#install-dependencies) | ||
38 | - [Fix native modules to match current electron node version](#fix-native-modules-to-match-current-electron-node-version) | ||
39 | - [Start development app](#start-development-app) | ||
40 | - [Packaging](#packaging) | ||
41 | - [Release](#release) | ||
42 | - [Contributors β¨](#contributors-%e2%9c%a8) | ||
43 | - [Backers via OpenCollective](#backers-via-opencollective) | ||
44 | - [Sponsors via OpenCollective](#sponsors-via-opencollective) | ||
45 | </details> | ||
46 | |||
47 | ### What is Ferdi? | ||
48 | |||
49 | Ferdi is a messaging browser that allows you to combine your favorite messaging services into one application. It is based on Franz - a software already used by thousands of people - with the difference that Ferdi gives you many additonal features and doesn't restrict its usage! Ferdi is compatible with your existing Franz account so you can continue right where you left off. Find out more about Ferdi and its features on [getferdi.com](https://getferdi.com). | ||
50 | |||
51 | ### What does Ferdi look like? | ||
52 | |||
53 | <details> | ||
54 | <summary>Toggle screenshots</summary> | ||
55 | <p align="center"> | ||
56 | <img alt="Keep all your messaging services in one place." src="./branding/screenshots/hero.png"> | ||
57 | <em>"Keep all your messaging services in one place."</em> | ||
58 | <img alt="Order your services with Ferdi Workspaces." src="./branding/screenshots/workspaces.png"> | ||
59 | <em>"Order your services with Ferdi Workspaces."</em> | ||
60 | <img alt="Always keep your Todo list open with Ferdi Todos." src="./branding/screenshots/todos.png"> | ||
61 | <em>"Always keep your Todo list open with Ferdi Todos."</em> | ||
62 | <img alt="Supporting all your services." src="./branding/screenshots/service-store.png"> | ||
63 | <em>"Supporting all your services."</em> | ||
64 | </p> | ||
65 | </details> | ||
66 | |||
12 | ## Download Ferdi | 67 | ## Download Ferdi |
13 | 68 | ||
14 | You can find the installers in the [latest release](https://github.com/getferdi/ferdi/releases) assets. | 69 | You can find the installers in the [latest stable release](https://github.com/getferdi/ferdi/releases/latest) assets and [all the other release here](https://github.com/getferdi/ferdi/releases). |
15 | 70 | ||
16 | ### Or use homebrew (macOS only) | 71 | ### Or use homebrew (macOS only) |
17 | 72 | ||
@@ -19,6 +74,16 @@ You can find the installers in the [latest release](https://github.com/getferdi/ | |||
19 | 74 | ||
20 | (Don't know homebrew? [brew.sh](https://brew.sh/)) | 75 | (Don't know homebrew? [brew.sh](https://brew.sh/)) |
21 | 76 | ||
77 | ### Or use AUR (Arch Linux) | ||
78 | |||
79 | Ferdi has two seperate AUR packages you can use: | ||
80 | - **ferdi-bin**: Uses your debian build and extracts it to Arch | ||
81 | - **ferdi-git**: Uses system electron version | ||
82 | |||
83 | If you use an AUR Helper e.g. yay, simply install it via `yay -S ferdi-bin`. | ||
84 | |||
85 | `ferdi-git` may not work on all systems so we advice you to use `ferdi-bin` instead. | ||
86 | |||
22 | ## Ferdi-specific Features | 87 | ## Ferdi-specific Features |
23 | 88 | ||
24 | - [x] Removes the counter-productive fullscreen app delay inviting users to upgrade | 89 | - [x] Removes the counter-productive fullscreen app delay inviting users to upgrade |
@@ -27,12 +92,15 @@ You can find the installers in the [latest release](https://github.com/getferdi/ | |||
27 | - [x] Remove bug that would incorrectly display unread messages count on some services (more info in [7566ccd](https://github.com/getferdi/ferdi/commit/7566ccd)) | 92 | - [x] Remove bug that would incorrectly display unread messages count on some services (more info in [7566ccd](https://github.com/getferdi/ferdi/commit/7566ccd)) |
28 | - [x] Makes all users Premium by default ([#15](https://github.com/getferdi/ferdi/issues/15)) | 93 | - [x] Makes all users Premium by default ([#15](https://github.com/getferdi/ferdi/issues/15)) |
29 | - [x] Using the Ferdi API instead of Franz's servers | 94 | - [x] Using the Ferdi API instead of Franz's servers |
95 | - [x] Upgrading to Electron 7 | ||
96 | - [x] Add several new services | ||
30 | - [x] [Add option to change server to a custom](https://github.com/getferdi/ferdi/wiki/Custom-Server) [ferdi-server](https://github.com/getferdi/server) | 97 | - [x] [Add option to change server to a custom](https://github.com/getferdi/ferdi/wiki/Custom-Server) [ferdi-server](https://github.com/getferdi/server) |
31 | - [x] Add option to use Ferdi without an account ([#5](https://github.com/getferdi/ferdi/issues/5)) | 98 | - [x] Add option to use Ferdi without an account ([#5](https://github.com/getferdi/ferdi/issues/5)) |
32 | - [x] Add "Private Notification"-Mode, that hides message content from notifications ([franz#879](https://github.com/meetfranz/franz/issues/879)) | 99 | - [x] Add "Private Notification"-Mode, that hides message content from notifications ([franz#879](https://github.com/meetfranz/franz/issues/879)) |
33 | - [x] Add Password Lock feature to keep your messages protected ([#41](https://github.com/getferdi/ferdi/issues/41), [franz#810](https://github.com/meetfranz/franz/issues/810), [franz#950](https://github.com/meetfranz/franz/issues/950), [franz#1430](https://github.com/meetfranz/franz/issues/1430)) | 100 | - [x] Add Password Lock feature to keep your messages protected ([#41](https://github.com/getferdi/ferdi/issues/41), [franz#810](https://github.com/meetfranz/franz/issues/810), [franz#950](https://github.com/meetfranz/franz/issues/950), [franz#1430](https://github.com/meetfranz/franz/issues/1430)) |
34 | - [x] Add an option to keep individual workspaces always loaded ([#37](https://github.com/getferdi/ferdi/issues/37)) | 101 | - [x] Add an option to keep individual workspaces always loaded ([#37](https://github.com/getferdi/ferdi/issues/37)) |
35 | - [x] Add universal Dark-Mode via the [DarkReader extension](https://github.com/darkreader/darkreader) ([#71](https://github.com/getferdi/ferdi/issues/71)) | 102 | - [x] Add Universal Dark Mode via the [DarkReader extension](https://github.com/darkreader/darkreader) ([#71](https://github.com/getferdi/ferdi/issues/71)) |
103 | - [x] Add adaptable Dark Mode that will respect the system's Dark Mode setting ([#173](https://github.com/getferdi/ferdi/issues/173)) | ||
36 | - [x] Add an option to auto-hide the menubar ([#7](https://github.com/getferdi/ferdi/issues/7), [franz#833](https://github.com/meetfranz/franz/issues/833)) | 104 | - [x] Add an option to auto-hide the menubar ([#7](https://github.com/getferdi/ferdi/issues/7), [franz#833](https://github.com/meetfranz/franz/issues/833)) |
37 | - [x] Add "Quick Switch" feature to help you navigate a long list of services (similar to Rambox's [Quick Switcher](https://rambox.pro/#feature-details/quick_switcher)) | 105 | - [x] Add "Quick Switch" feature to help you navigate a long list of services (similar to Rambox's [Quick Switcher](https://rambox.pro/#feature-details/quick_switcher)) |
38 | - [x] Add "Service Hibernation" that will automatically unload services when they are unused | 106 | - [x] Add "Service Hibernation" that will automatically unload services when they are unused |
@@ -40,51 +108,51 @@ You can find the installers in the [latest release](https://github.com/getferdi/ | |||
40 | - [x] Add CTRL+β and CTRL+β shortcuts and menu options to go back and forward in the service browsing history([#39](https://github.com/getferdi/ferdi/issues/39)) | 108 | - [x] Add CTRL+β and CTRL+β shortcuts and menu options to go back and forward in the service browsing history([#39](https://github.com/getferdi/ferdi/issues/39)) |
41 | - [x] Add option to show a browser-like navigation bar on all services | 109 | - [x] Add option to show a browser-like navigation bar on all services |
42 | - [x] Add option to change accent color | 110 | - [x] Add option to change accent color |
111 | - [x] Add local [recipe repository](https://github.com/getferdi/recipes) that removes the need of downloading recipes from a remote server | ||
43 | - [x] Add portable version for Windows | 112 | - [x] Add portable version for Windows |
44 | - [x] Add Process Manager to find services using a lot of resources | 113 | - [x] Add Process Manager to find services using a lot of resources |
45 | - [x] Add "npm run prepare-code" command for development to lint and beautify code | 114 | - [x] Add "npm run prepare-code" command for development to lint and beautify code |
46 | - [x] Add button to open darkmode.css for a service | 115 | - [x] Add button to open darkmode.css for a service |
47 | - [x] Switch to [`electron-spellchecker`](https://github.com/electron-userland/electron-spellchecker) ti improve application size | 116 | - [x] Allow SVGs for service custom icon |
117 | - [x] Switch to [`electron-spellchecker`](https://github.com/electron-userland/electron-spellchecker) to improve application size | ||
48 | - [x] Improve "About Ferdi" screen to better display versions | 118 | - [x] Improve "About Ferdi" screen to better display versions |
49 | - [x] Minifying build files to improve app size | 119 | - [x] Minifying build files to improve app size |
50 | - [x] [Makes it possible to edit the "Franz Todo" server](https://github.com/getferdi/ferdi/wiki/Custom-Todo) | 120 | - [x] [Makes it possible to edit the "Franz Todo" server](https://github.com/getferdi/ferdi/wiki/Custom-Todo) |
51 | - [x] Makes RocketChat self-hosted generally available ([#6](https://github.com/getferdi/ferdi/issues/6)) | 121 | - [x] Makes RocketChat self-hosted generally available ([#6](https://github.com/getferdi/ferdi/issues/6)) |
52 | - [x] Comes with a custom branding proper to Ferdi | 122 | - [x] Comes with a custom branding proper to Ferdi |
123 | - [x] UI improvements | ||
53 | 124 | ||
54 | ## Development | 125 | ## Development |
55 | 126 | ||
56 | ### Preparations | 127 | ### Install OS dependencies |
57 | 128 | ||
58 | #### Install OS dependencies | 129 | #### Node.js |
59 | |||
60 | ##### Node.js | ||
61 | 130 | ||
62 | Please make sure you are running NodeJS v10 ([v10.16.3](https://nodejs.org/dist/v10.16.3/) suggested). Versions above will throw an errow when trying to install due to an [old fsevent dependency](https://github.com/fsevents/fsevents/issues/278). | 131 | Please make sure you are running NodeJS v10 ([v10.16.3](https://nodejs.org/dist/v10.16.3/) suggested). Versions above will throw an errow when trying to install due to an [old fsevent dependency](https://github.com/fsevents/fsevents/issues/278). |
63 | 132 | ||
64 | ##### Git | 133 | #### Git |
65 | 134 | ||
66 | The version [2.23.0](https://github.com/git-for-windows/git/releases/tag/v2.23.0.windows.1) for Git is working fine for development. You can then use the console from Git to do the development procedure. | 135 | The version [2.23.0](https://github.com/git-for-windows/git/releases/tag/v2.23.0.windows.1) for Git is working fine for development. You can then use the console from Git to do the development procedure. |
67 | 136 | ||
68 | ##### Debian/Ubuntu | 137 | #### Debian/Ubuntu |
69 | 138 | ||
70 | ```bash | 139 | ```bash |
71 | $ apt install libx11-dev libxext-dev libxss-dev libxkbfile-dev | 140 | $ apt install libx11-dev libxext-dev libxss-dev libxkbfile-dev |
72 | ``` | 141 | ``` |
73 | 142 | ||
74 | ##### Fedora | 143 | #### Fedora |
75 | 144 | ||
76 | ```bash | 145 | ```bash |
77 | $ dnf install libX11-devel libXext-devel libXScrnSaver-devel libxkbfile-devel | 146 | $ dnf install libX11-devel libXext-devel libXScrnSaver-devel libxkbfile-devel |
78 | ``` | 147 | ``` |
79 | 148 | ||
80 | ##### Windows | 149 | #### Windows |
81 | 150 | ||
82 | ```bash | 151 | ```bash |
83 | $ npm install --global windows-build-tools // Windows 10 | 152 | $ npm install --global windows-build-tools --vs2015 |
84 | $ npm install --global windows-build-tools --vs2015 // Windows 7 | ||
85 | ``` | 153 | ``` |
86 | 154 | ||
87 | #### Clone repository with submodule | 155 | ### Clone repository with submodule |
88 | 156 | ||
89 | ```bash | 157 | ```bash |
90 | $ git clone https://github.com/getferdi/ferdi.git | 158 | $ git clone https://github.com/getferdi/ferdi.git |
@@ -132,7 +200,11 @@ Deliverables will be available in the `out` folder. | |||
132 | ### Release | 200 | ### Release |
133 | 201 | ||
134 | ```bash | 202 | ```bash |
135 | $ git checkout develop && git pull && git checkout master | 203 | $ git checkout develop && git pull |
204 | $ git submodule update --remote --force | ||
205 | $ git add . | ||
206 | $ git commit -m "Update submodules" | ||
207 | $ git checkout master | ||
136 | $ git merge --no-ff develop | 208 | $ git merge --no-ff develop |
137 | $ git tag v5.3.4-beta.4 | 209 | $ git tag v5.3.4-beta.4 |
138 | $ git push --tags | 210 | $ git push --tags |
@@ -149,32 +221,40 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d | |||
149 | <!-- markdownlint-disable --> | 221 | <!-- markdownlint-disable --> |
150 | <table> | 222 | <table> |
151 | <tr> | 223 | <tr> |
152 | <td align="center"><a href="https://vantezzen.io"><img src="https://avatars2.githubusercontent.com/u/10333196?v=4" width="40px;" alt="Bennett"/><br /><sub><b>Bennett</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Code">π»</a> <a href="#design-vantezzen" title="Design">π¨</a> <a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Documentation">π</a> <a href="#ideas-vantezzen" title="Ideas, Planning, & Feedback">π€</a> <a href="#translation-vantezzen" title="Translation">π</a> <a href="#example-vantezzen" title="Examples">π‘</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Avantezzen" title="Bug reports">π</a> <a href="#content-vantezzen" title="Content">π</a> <a href="#infra-vantezzen" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#userTesting-vantezzen" title="User Testing">π</a> <a href="#question-vantezzen" title="Answering Questions">π¬</a> <a href="#projectManagement-vantezzen" title="Project Management">π</a> <a href="#review-vantezzen" title="Reviewed Pull Requests">π</a></td> | 224 | <td align="center"><a href="https://vantezzen.io"><img src="https://avatars2.githubusercontent.com/u/10333196?v=4" width="40px;" alt=""/><br /><sub><b>Bennett</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Code">π»</a> <a href="#design-vantezzen" title="Design">π¨</a> <a href="https://github.com/getferdi/ferdi/commits?author=vantezzen" title="Documentation">π</a> <a href="#ideas-vantezzen" title="Ideas, Planning, & Feedback">π€</a> <a href="#translation-vantezzen" title="Translation">π</a> <a href="#example-vantezzen" title="Examples">π‘</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Avantezzen" title="Bug reports">π</a> <a href="#content-vantezzen" title="Content">π</a> <a href="#infra-vantezzen" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#userTesting-vantezzen" title="User Testing">π</a> <a href="#question-vantezzen" title="Answering Questions">π¬</a> <a href="#projectManagement-vantezzen" title="Project Management">π</a> <a href="https://github.com/getferdi/ferdi/pulls?q=is%3Apr+reviewed-by%3Avantezzen" title="Reviewed Pull Requests">π</a></td> |
153 | <td align="center"><a href="http://www.adlk.io"><img src="https://avatars1.githubusercontent.com/u/3265004?v=4" width="40px;" alt="Stefan Malzner"/><br /><sub><b>Stefan Malzner</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Code">π»</a> <a href="#content-adlk" title="Content">π</a> <a href="#design-adlk" title="Design">π¨</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Documentation">π</a> <a href="#ideas-adlk" title="Ideas, Planning, & Feedback">π€</a> <a href="#infra-adlk" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#projectManagement-adlk" title="Project Management">π</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Tests">β οΈ</a> <a href="#translation-adlk" title="Translation">π</a></td> | 225 | <td align="center"><a href="http://www.adlk.io"><img src="https://avatars1.githubusercontent.com/u/3265004?v=4" width="40px;" alt=""/><br /><sub><b>Stefan Malzner</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Code">π»</a> <a href="#content-adlk" title="Content">π</a> <a href="#design-adlk" title="Design">π¨</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Documentation">π</a> <a href="#ideas-adlk" title="Ideas, Planning, & Feedback">π€</a> <a href="#infra-adlk" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#projectManagement-adlk" title="Project Management">π</a> <a href="https://github.com/getferdi/ferdi/commits?author=adlk" title="Tests">β οΈ</a> <a href="#translation-adlk" title="Translation">π</a></td> |
154 | <td align="center"><a href="https://twitter.com/kytwb"><img src="https://avatars0.githubusercontent.com/u/412895?v=4" width="40px;" alt="Amine Mouafik"/><br /><sub><b>Amine Mouafik</b></sub></a><br /><a href="#question-kytwb" title="Answering Questions">π¬</a> <a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Code">π»</a> <a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Documentation">π</a> <a href="#ideas-kytwb" title="Ideas, Planning, & Feedback">π€</a> <a href="#maintenance-kytwb" title="Maintenance">π§</a> <a href="#platform-kytwb" title="Packaging/porting to new platform">π¦</a> <a href="#projectManagement-kytwb" title="Project Management">π</a> <a href="#review-kytwb" title="Reviewed Pull Requests">π</a> <a href="#infra-kytwb" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#fundingFinding-kytwb" title="Funding Finding">π</a> <a href="#blog-kytwb" title="Blogposts">π</a></td> | 226 | <td align="center"><a href="https://twitter.com/kytwb"><img src="https://avatars0.githubusercontent.com/u/412895?v=4" width="40px;" alt=""/><br /><sub><b>Amine Mouafik</b></sub></a><br /><a href="#question-kytwb" title="Answering Questions">π¬</a> <a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Code">π»</a> <a href="https://github.com/getferdi/ferdi/commits?author=kytwb" title="Documentation">π</a> <a href="#ideas-kytwb" title="Ideas, Planning, & Feedback">π€</a> <a href="#maintenance-kytwb" title="Maintenance">π§</a> <a href="#platform-kytwb" title="Packaging/porting to new platform">π¦</a> <a href="#projectManagement-kytwb" title="Project Management">π</a> <a href="https://github.com/getferdi/ferdi/pulls?q=is%3Apr+reviewed-by%3Akytwb" title="Reviewed Pull Requests">π</a> <a href="#infra-kytwb" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#fundingFinding-kytwb" title="Funding Finding">π</a> <a href="#blog-kytwb" title="Blogposts">π</a></td> |
155 | <td align="center"><a href="http://seriesgt.com"><img src="https://avatars3.githubusercontent.com/u/5977640?v=4" width="40px;" alt="ZeroCool"/><br /><sub><b>ZeroCool</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=ZeroCool940711" title="Code">π»</a> <a href="#ideas-ZeroCool940711" title="Ideas, Planning, & Feedback">π€</a></td> | 227 | <td align="center"><a href="http://seriesgt.com"><img src="https://avatars3.githubusercontent.com/u/5977640?v=4" width="40px;" alt=""/><br /><sub><b>ZeroCool</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=ZeroCool940711" title="Code">π»</a> <a href="#ideas-ZeroCool940711" title="Ideas, Planning, & Feedback">π€</a></td> |
156 | <td align="center"><a href="https://github.com/rseitbekov"><img src="https://avatars2.githubusercontent.com/u/35684439?v=4" width="40px;" alt="rseitbekov"/><br /><sub><b>rseitbekov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=rseitbekov" title="Code">π»</a></td> | 228 | <td align="center"><a href="https://github.com/rseitbekov"><img src="https://avatars2.githubusercontent.com/u/35684439?v=4" width="40px;" alt=""/><br /><sub><b>rseitbekov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=rseitbekov" title="Code">π»</a></td> |
157 | <td align="center"><a href="https://djangogigs.com/developers/peter-bittner/"><img src="https://avatars2.githubusercontent.com/u/665072?v=4" width="40px;" alt="Peter Bittner"/><br /><sub><b>Peter Bittner</b></sub></a><br /><a href="#ideas-bittner" title="Ideas, Planning, & Feedback">π€</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Abittner" title="Bug reports">π</a></td> | 229 | <td align="center"><a href="https://djangogigs.com/developers/peter-bittner/"><img src="https://avatars2.githubusercontent.com/u/665072?v=4" width="40px;" alt=""/><br /><sub><b>Peter Bittner</b></sub></a><br /><a href="#ideas-bittner" title="Ideas, Planning, & Feedback">π€</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3Abittner" title="Bug reports">π</a></td> |
158 | </tr> | 230 | </tr> |
159 | <tr> | 231 | <tr> |
160 | <td align="center"><a href="https://github.com/justus-saul"><img src="https://avatars1.githubusercontent.com/u/5861826?v=4" width="40px;" alt="Justus Saul"/><br /><sub><b>Justus Saul</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Ajustus-saul" title="Bug reports">π</a> <a href="#ideas-justus-saul" title="Ideas, Planning, & Feedback">π€</a></td> | 232 | <td align="center"><a href="https://github.com/justus-saul"><img src="https://avatars1.githubusercontent.com/u/5861826?v=4" width="40px;" alt=""/><br /><sub><b>Justus Saul</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Ajustus-saul" title="Bug reports">π</a> <a href="#ideas-justus-saul" title="Ideas, Planning, & Feedback">π€</a></td> |
161 | <td align="center"><a href="https://github.com/igreil"><img src="https://avatars0.githubusercontent.com/u/17239151?v=4" width="40px;" alt="igreil"/><br /><sub><b>igreil</b></sub></a><br /><a href="#ideas-igreil" title="Ideas, Planning, & Feedback">π€</a></td> | 233 | <td align="center"><a href="https://github.com/igreil"><img src="https://avatars0.githubusercontent.com/u/17239151?v=4" width="40px;" alt=""/><br /><sub><b>igreil</b></sub></a><br /><a href="#ideas-igreil" title="Ideas, Planning, & Feedback">π€</a></td> |
162 | <td align="center"><a href="http://marcolopes.eu"><img src="https://avatars1.githubusercontent.com/u/431889?v=4" width="40px;" alt="Marco Lopes"/><br /><sub><b>Marco Lopes</b></sub></a><br /><a href="#ideas-marcolopes" title="Ideas, Planning, & Feedback">π€</a></td> | 234 | <td align="center"><a href="http://marcolopes.eu"><img src="https://avatars1.githubusercontent.com/u/431889?v=4" width="40px;" alt=""/><br /><sub><b>Marco Lopes</b></sub></a><br /><a href="#ideas-marcolopes" title="Ideas, Planning, & Feedback">π€</a></td> |
163 | <td align="center"><a href="https://github.com/dayzlun"><img src="https://avatars3.githubusercontent.com/u/17259690?v=4" width="40px;" alt="dayzlun"/><br /><sub><b>dayzlun</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Adayzlun" title="Bug reports">π</a></td> | 235 | <td align="center"><a href="https://github.com/dayzlun"><img src="https://avatars3.githubusercontent.com/u/17259690?v=4" width="40px;" alt=""/><br /><sub><b>dayzlun</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Adayzlun" title="Bug reports">π</a></td> |
164 | <td align="center"><a href="https://twitter.com/tobigue_"><img src="https://avatars2.githubusercontent.com/u/1560152?v=4" width="40px;" alt="Tobias GΓΌnther"/><br /><sub><b>Tobias GΓΌnther</b></sub></a><br /><a href="#ideas-tobigue" title="Ideas, Planning, & Feedback">π€</a></td> | 236 | <td align="center"><a href="https://twitter.com/tobigue_"><img src="https://avatars2.githubusercontent.com/u/1560152?v=4" width="40px;" alt=""/><br /><sub><b>Tobias GΓΌnther</b></sub></a><br /><a href="#ideas-tobigue" title="Ideas, Planning, & Feedback">π€</a></td> |
165 | <td align="center"><a href="https://github.com/AGCaesar"><img src="https://avatars3.githubusercontent.com/u/7844066?v=4" width="40px;" alt="AGCaesar"/><br /><sub><b>AGCaesar</b></sub></a><br /><a href="#platform-AGCaesar" title="Packaging/porting to new platform">π¦</a></td> | 237 | <td align="center"><a href="https://github.com/AGCaesar"><img src="https://avatars3.githubusercontent.com/u/7844066?v=4" width="40px;" alt=""/><br /><sub><b>AGCaesar</b></sub></a><br /><a href="#platform-AGCaesar" title="Packaging/porting to new platform">π¦</a></td> |
166 | </tr> | 238 | </tr> |
167 | <tr> | 239 | <tr> |
168 | <td align="center"><a href="https://github.com/Makazzz"><img src="https://avatars2.githubusercontent.com/u/49844464?v=4" width="40px;" alt="Makazzz"/><br /><sub><b>Makazzz</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3AMakazzz" title="Bug reports">π</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Code">π»</a> <a href="#translation-Makazzz" title="Translation">π</a> <a href="#content-Makazzz" title="Content">π</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Documentation">π</a> <a href="#platform-Makazzz" title="Packaging/porting to new platform">π¦</a></td> | 240 | <td align="center"><a href="https://github.com/Makazzz"><img src="https://avatars2.githubusercontent.com/u/49844464?v=4" width="40px;" alt=""/><br /><sub><b>Makazzz</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3AMakazzz" title="Bug reports">π</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Code">π»</a> <a href="#translation-Makazzz" title="Translation">π</a> <a href="#content-Makazzz" title="Content">π</a> <a href="https://github.com/getferdi/ferdi/commits?author=Makazzz" title="Documentation">π</a> <a href="#platform-Makazzz" title="Packaging/porting to new platform">π¦</a></td> |
169 | <td align="center"><a href="https://github.com/xthursdayx"><img src="https://avatars0.githubusercontent.com/u/18044308?v=4" width="40px;" alt="xthursdayx"/><br /><sub><b>xthursdayx</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Code">π»</a> <a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Documentation">π</a> <a href="#infra-xthursdayx" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#platform-xthursdayx" title="Packaging/porting to new platform">π¦</a></td> | 241 | <td align="center"><a href="https://github.com/xthursdayx"><img src="https://avatars0.githubusercontent.com/u/18044308?v=4" width="40px;" alt=""/><br /><sub><b>xthursdayx</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Code">π»</a> <a href="https://github.com/getferdi/ferdi/commits?author=xthursdayx" title="Documentation">π</a> <a href="#infra-xthursdayx" title="Infrastructure (Hosting, Build-Tools, etc)">π</a> <a href="#platform-xthursdayx" title="Packaging/porting to new platform">π¦</a></td> |
170 | <td align="center"><a href="https://github.com/Gaboris"><img src="https://avatars2.githubusercontent.com/u/9462372?v=4" width="40px;" alt="Gaboris"/><br /><sub><b>Gaboris</b></sub></a><br /><a href="#question-Gaboris" title="Answering Questions">π¬</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3AGaboris" title="Bug reports">π</a></td> | 242 | <td align="center"><a href="https://github.com/Gaboris"><img src="https://avatars2.githubusercontent.com/u/9462372?v=4" width="40px;" alt=""/><br /><sub><b>Gaboris</b></sub></a><br /><a href="#question-Gaboris" title="Answering Questions">π¬</a> <a href="https://github.com/getferdi/ferdi/issues?q=author%3AGaboris" title="Bug reports">π</a></td> |
171 | <td align="center"><a href="http://www.cu3ed.com/"><img src="https://avatars1.githubusercontent.com/u/61343?v=4" width="40px;" alt="Ce"/><br /><sub><b>Ce</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aincace" title="Bug reports">π</a></td> | 243 | <td align="center"><a href="http://www.cu3ed.com/"><img src="https://avatars1.githubusercontent.com/u/61343?v=4" width="40px;" alt=""/><br /><sub><b>Ce</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aincace" title="Bug reports">π</a></td> |
172 | <td align="center"><a href="http://pztrn.name/"><img src="https://avatars1.githubusercontent.com/u/869402?v=4" width="40px;" alt="Stanislav N."/><br /><sub><b>Stanislav N.</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Apztrn" title="Bug reports">π</a></td> | 244 | <td align="center"><a href="http://pztrn.name/"><img src="https://avatars1.githubusercontent.com/u/869402?v=4" width="40px;" alt=""/><br /><sub><b>Stanislav N.</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Apztrn" title="Bug reports">π</a></td> |
173 | <td align="center"><a href="http://www.patrickcurl.com"><img src="https://avatars1.githubusercontent.com/u/1470061?v=4" width="40px;" alt="Patrick Curl"/><br /><sub><b>Patrick Curl</b></sub></a><br /><a href="#ideas-patrickcurl" title="Ideas, Planning, & Feedback">π€</a></td> | 245 | <td align="center"><a href="http://www.patrickcurl.com"><img src="https://avatars1.githubusercontent.com/u/1470061?v=4" width="40px;" alt=""/><br /><sub><b>Patrick Curl</b></sub></a><br /><a href="#ideas-patrickcurl" title="Ideas, Planning, & Feedback">π€</a></td> |
174 | </tr> | 246 | </tr> |
175 | <tr> | 247 | <tr> |
176 | <td align="center"><a href="https://github.com/Stanzilla"><img src="https://avatars3.githubusercontent.com/u/75278?v=4" width="40px;" alt="Benjamin Staneck"/><br /><sub><b>Benjamin Staneck</b></sub></a><br /><a href="#design-Stanzilla" title="Design">π¨</a></td> | 248 | <td align="center"><a href="https://github.com/Stanzilla"><img src="https://avatars3.githubusercontent.com/u/75278?v=4" width="40px;" alt=""/><br /><sub><b>Benjamin Staneck</b></sub></a><br /><a href="#design-Stanzilla" title="Design">π¨</a></td> |
177 | <td align="center"><a href="https://github.com/ammarmalhas"><img src="https://avatars1.githubusercontent.com/u/57057209?v=4" width="40px;" alt="ammarmalhas"/><br /><sub><b>ammarmalhas</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aammarmalhas" title="Bug reports">π</a> <a href="#security-ammarmalhas" title="Security">π‘οΈ</a></td> | 249 | <td align="center"><a href="https://github.com/ammarmalhas"><img src="https://avatars1.githubusercontent.com/u/57057209?v=4" width="40px;" alt=""/><br /><sub><b>ammarmalhas</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/issues?q=author%3Aammarmalhas" title="Bug reports">π</a> <a href="#security-ammarmalhas" title="Security">π‘οΈ</a></td> |
250 | <td align="center"><a href="https://github.com/steliyan"><img src="https://avatars1.githubusercontent.com/u/1850292?v=4" width="40px;" alt=""/><br /><sub><b>Steliyan Stoyanov</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=steliyan" title="Code">π»</a> <a href="#ideas-steliyan" title="Ideas, Planning, & Feedback">π€</a></td> | ||
251 | <td align="center"><a href="https://github.com/brorbw"><img src="https://avatars2.githubusercontent.com/u/5909562?v=4" width="40px;" alt=""/><br /><sub><b>Bror Winther</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=brorbw" title="Documentation">π</a></td> | ||
252 | <td align="center"><a href="https://fwdekker.com/"><img src="https://avatars0.githubusercontent.com/u/13442533?v=4" width="40px;" alt=""/><br /><sub><b>Felix W. Dekker</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=FWDekker" title="Documentation">π</a></td> | ||
253 | <td align="center"><a href="https://github.com/Sauceee"><img src="https://avatars2.githubusercontent.com/u/17987941?v=4" width="40px;" alt=""/><br /><sub><b>Sauceee</b></sub></a><br /><a href="#design-Sauceee" title="Design">π¨</a></td> | ||
254 | </tr> | ||
255 | <tr> | ||
256 | <td align="center"><a href="http://lhw.ring0.de"><img src="https://avatars2.githubusercontent.com/u/351875?v=4" width="40px;" alt=""/><br /><sub><b>Lennart Weller</b></sub></a><br /><a href="#platform-lhw" title="Packaging/porting to new platform">π¦</a></td> | ||
257 | <td align="center"><a href="https://github.com/jereksel"><img src="https://avatars0.githubusercontent.com/u/1307829?v=4" width="40px;" alt=""/><br /><sub><b>Andrzej Ressel</b></sub></a><br /><a href="https://github.com/getferdi/ferdi/commits?author=jereksel" title="Code">π»</a></td> | ||
178 | </tr> | 258 | </tr> |
179 | </table> | 259 | </table> |
180 | 260 | ||
@@ -194,4 +274,8 @@ This project follows the [all-contributors](https://github.com/all-contributors/ | |||
194 | 274 | ||
195 | ## Backers via OpenCollective | 275 | ## Backers via OpenCollective |
196 | 276 | ||
197 | <a href="https://opencollective.com/getferdi#backers" target="_blank"><img src="https://opencollective.com/getferdi/backers.svg?width=890"></a> | 277 | <a href="https://opencollective.com/getferdi#section-contribute" target="_blank"><img src="https://opencollective.com/getferdi/backers.svg?width=890"></a> |
278 | |||
279 | ## Sponsors via OpenCollective | ||
280 | |||
281 | <a href="https://opencollective.com/getferdi#section-contribute" target="_blank"><img src="https://opencollective.com/getferdi/sponsors.svg?width=890"></a> | ||