Getting the API Development Jumpstarted

Hello all,

I’ve been cranking through some smaller stuff that’s given me a lot of exposure and getting up to speed on Rails, the code base back end, and code base front end. I have a bunch of free time that I can put towards the project at this time and an interest to do it. I’ve been devouring the Discourse posts and Github Issues I can find on the API as well as going through Frank Roussea’s repo on GitHub. He seemed to have made some good progress towards it, but it also looks like it was a continuation from Kent Shikama’s work from the beginning of 2016. On the surface it seems like he has a pretty good start but I don’t know if there is are known issues with this code base. The comments on the GitHub Issues lead me to think no but I don’t want to be presumptuous. His last commits are from July though and I know he’s been making incremental progress on it since 2017, and again going back to Kent’s work before that from what I can tell. I haven’t done a deep dive, looked at code coverage etc so all of that is just initial impressions.

I’m naturally a back end guy, but only have done Ruby and Rails for this project and first exposed to it for real this spring. So perhaps that’s what has me gravitating towards getting this done but also because it seems like it is really going to be important for a lot of stuff that we could potentially do. I’m sure that’s why the team spent so long developing the spec. What I am looking for guidance on from the team is the path forward.

If it is the estimation of the core team that Frank has a solid base and he just needs more development horsepower then I was going to reach out to him to work from his baseline with him. However if there is a belief that it would be better to start from scratch for whatever reason then I could look at starting the API development process from the existing develop branch baseline.

I’d also like to discuss preferred integration plans in terms of one giant PR or more of an incremental approach over a release. It seems that although there are pretty big code updates these are isolated into the API specific region for the most part. However it is also a very big change so I don’t know if it’s something where we’d rather roll the API out incrementally.

I’m not familiar with this part of the code but I don’t see any reason why you should start from scratch instead using Frank’s work. Simply comment on his PR and ask what you can do to help.

1 Like

I thought that’d be the case but always like to be sure. I am not seeing an active thread here on the API discussion. Should I post suggestions for changes as issues on the api-documentation repo?

Yes, please, if it is a suggestion in regards to the actual API endpoints/returns, and not its implementation.

1 Like

I created a stoplight chart in Google Sheets for the API development: https://docs.google.com/spreadsheets/d/1eiV2LICJa1hNbZgSUTLArQR9hLKGQoMsMBHaH5IM0Lo

Anybody ever thought of using something like this? http://deployd.com/

I don’t see how a NodeJS framework that spits out server code for RESTy applications is any relevant to diaspora*s API development. Mind eloaborating?

1 Like

I personally have never really worked on an API system, I found that a few years ago when I did a small attempt at it, but my experience doesn’t really go much farther than that. Just trying to offer potential helpful solutions to the problem, that’s all :slight_smile: