iOS App for Diaspora


(Amr) #1

Hi
I am new to Diaspora. However, I am an iOS developer and would like to help in building an iOS app for Diaspora, if there is already a project in development pls let me know, otherwise I can create it from scratch.


(Flaburgan) #2

Hi amr and thanks for you interest for diaspora*!

There is no official work on an iOS application at the moment. If you want to play with the diaspora* API you need to do it from scratch. However please note that even if the specifications are well defined, only the authenticate part is already shipped in master so running on production pods. And unfortunately as there are only volunteers we cannot guarantee a delivery date.


(Amr) #3

Hi Flaburgan

Thank you. I’ll try to start doing that. Anybody in the community who would like to help is welcome. Is there a slack workspace for diaspora?


(Flaburgan) #4

We use IRC. You can join #diaspora-dev on freenode.


(Amr) #5

Why don’t we use slack better?


(goob) #6

Hi @amraboelela, and thanks a lot. A working iOS app would be fantastic. The core project decided to focus on a web interface that works well on mobile devices rather than trying to create apps for each mobile OS as a better use of resources. Several Android apps have been created to various stages of completion by community developers, but so far no iOS app.

As Fla says, some work has already been completed on an API and some is in progress. I’m not sure of the best place to get an overview of what state it is at, although you can look at the list of issues with the API tag and list of PRs mentioning ‘API’ to get an idea. Probably chatting to the core team on IRC will give you the clearest picture!

Good luck, and thanks.


(Amr) #7

As a general question, it seems like I have to download the code locally which will behave like a separate pod, and those pods are already communicating with each other using an API, why can’t we leverage this same inter-pod API for the client also?


(Amr) #8

I tried the IRC room and there are people but they don’t talk or reply!

Why don’t we use slack better to see the chat history and get notifications?


(Dennis Schubert) #9

That’s honestly a really weird question, but let me answer it this way: Because it’s not an API. Pods exchange messages between each others, but that has nothing to do with the requirements a client has. There is no authentication, there is no way to retrieve anything, and there shouldn’t be. The federation protocol has nothing to do with the way the information is displayed, and mixing two entirely different concerns is a bad idea.

Because we have Discourse. Also, because using something we can’t host ourselves and something that forces people to provide personal information and use a third party client is kinda horrible.


(Rasmus Fuhse) #10

Hi Amr,

Would be great to see an iOS app for diaspora. I am not a special iOS developer, but I could try to contribute a little bit. Could you open a project on github (or any other git page) and post the URL here.

If IRC is not for you, you might want to use discourse here for discussing the development. Slack is not free software and discourse is just as good for most purposes.

Rasmus


(Amr) #11

Hi Rasmus
Here u r: https://github.com/amraboelela/diaspora-ios

In version 1.0 I am planing to use a web view to the pod, and try to simplify only the sign-in, sign-up experience

I am new to Ruby on Rails so I was trying to learn it first and try to install a dev environment of diaspora in my machine


(Amr) #12

I created diaspora-ios under Apache Licence 2.0
Source file headers should be like:

Copyright 2018 Diaspora

Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an “AS IS” BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.


(Dennis Schubert) #13

So, time to be that guy again. And I’ll say everything upfront now, so we don’t run into similar issues that we had with the awesome folks developing dandelion.

No.

Your project is neither endorsed nor supported in any way by the project team, and it is not an official client, and it is kinda my role to make sure everyone plays by the same rules. Please ensure that it is clearly understandable for everyone who is watching the project on GitHub that your project is not related to the diaspora* project team.

If you plan on publishing anything to the app store, do not use the name “diaspora* for iOS” or anything that may give the impression your project is an official project. You are, however, more than welcome to use the “for diaspora*” suffix or write “a client for the diaspora* network” or similar in the title/description. Like, for example in the case of dandelion, “dandelion for diaspora*” is perfectly fine, so is using “Client for the diaspora* social network” as a description.

You can read parts of the reasoning behind this in the “Trademarks and confusion” block here, but mainly it boils down to: a) we don’t want to be the users choice for getting support b) we don’t want to give the impression there is an official client when there is none yet and c) third parties using a trademark without permission can result in us losing the trademark, thus not being able to protect against people who build malware with our name on it (believe me, that has happend before), so the legal team in the organization doing our dirty background work will write you angry emails and take your app down if you use it.

If in doubt, ask me before making a decision, happy to help out with questions.


(Amr) #14

Ok I’ll call it Twispora then :slight_smile:


(Amr) #15

This is a record!
It took less than a week from developing to appear in App Store!
Twispora https://itunes.apple.com/us/app/twispora/id1333803167?mt=8


(goob) #16

Wow! Impressive speed. Unfortunately I can’t check it out myself, but I look forward to hearing reviews. Thanks for your work.


(Alex Grossman) #18

Can the Tiespora app be configured to work with pluspora.com?


(goob) #19

@AJGrossman, you need to ask the developer of the app any questions about it. No app is endorsed or supported by the core diaspora* project; they are all third-party tools.

The GitHub repository for this app is given in a link a few comments above this. That’s where to contact the developer with bug issues and support requests.

But to be honest, it, like other diaspora* apps, is little more than a wrapper around the web interface. You can get as good if not better results from using diaspora* within your device’s browser. If you find that the mobile version doesn’t have all the features you need, click the drawer icon and ‘toggle mobile’ to switch to the fully responsive ‘desktop’ view.

Someone asked a similar question about one of the Android apps yesterday, and if your problem is that the app doesn’t recognise your pod’s name, the answer is to enter the domain, i.e. pluspora.com. Hope that works for you.


#20

Thanks @amraboelela :slight_smile: