Five other people and I are developing an iOS game using ARKit. I have a MacBook that I use for myself, and a Mac mini sitting at home that could act as a remote build server.
Now, it would be easy enough for them to edit the project's swift files, upload them to my machine, and have it build the project for them. Or even just push them to out git repository which runs all the tests with TravisCI.
I feel that's a really subpar solution, as you'd miss all of the helpful features of a modern IDE. It's a lot easier when your tools immediately tell you you're doing something stupid, rather than writing a bunch of code just to have it not compile in the end.
I started searching, and I found this: http://dringend.cc
Something like that would probably be ideal, but unfortunately it's only available for iOS, and they'd need a Windows or Linux application.
Things I've thought about using:
- Using Steam or something to stream the entire desktop (VNC is too slow) so they could use Xcode. Could work, but it could be flaky depending on the Internet connection. Plus, it doesn't support multiple users obviously, and even if it did, it would still be a pain to manage multiple git users.
- Something like https://www.macincloud.com for each of them, but it could get expensive. Ideally we wouldn't have to spend any money.
- Buying Macs - not an option.
Is there any sort of IDE that would give you code analysis, and allow you to run code remotely and see the output locally? I know CLion supports Swift, but it wouldn't really work when you tried to import UIKit and etc.
I know working around having to get Macs results in a crappy experience overall, but this is something we're doing as part of our university course. We do have some hope of putting it on the App Store (that's why we chose iOS), but it's not a commercial project by any means - and as such there are no funds available to buy Macs.
I had some hope I could devise an elegant solution for this, but perhaps having them run a slow VM would be our only somewhat acceptable option.