The link you provided is a really good and comprehensible explanation of the workflow we should have! I recommend the developers to read it!
We should go on working with the “forking flow”, so that every developer has its own public repository, and as you said work with the “GitFlow” for the branching workflow.
The feature branch can probably be closed.
Depending on what’s exactly in those branches, if the release branch is the branch of the last version released, it should be merged into the master and then closed.
What is the gh-pages branch for?