Github Classroom and Repl.it Integration (Beta)

Hi all,

I’ve signed up to the Repl.it Integration beta and was looking forward to it coming through today and trying it out.

It seems that you’re not able to enable an assignment that’s already been created to use the Repl.it functionality. Is there a technical reason for this and is there any scope for it to be able to do this in future? It unfortunately renders it practically useless for me at the moment because I’m halfway through a course and all of the assignments are created.

1 Like

It’s a little technically tricky to enable to integration on assignments that exist because the integration makes changes to README, and its hard to do this if different students have changed their README already in different ways. Have any students accepted your future assignments yet? We may be able to push up a change that lets you edit the IDE for new acceptances.

That would be helpful - I feel it would definitely be beneficial to have the ability to add/edit the Repl.it functionality after an assignment is created.

I ended up actually spending some time today and re-made the future assignments so that we could use and test out the Repl.it Integration. First class using that is Monday so we should get some feedback then!

I’m really looking forward to use the Repl.it integration. Just running into the following issue…

So I’ve got Repl.it integration enabled to my GitHub Classroom account, but I feel like I am missing something. Here’s what I have done, or at least the workflow I would expect to follow:

  • In the course’s GitHub organisation, I made the “assignment” repo.
  • I make this a private repo. In fact, everything needs to be private for obvious reason (plagiarism). Otherwise, there’s no way I can use these technologies in a classroom environment.
  • I then go to GitHub Classroom, and define the assignment that will use the repo. I also specify that I would like to integrate with the repl.it Online IDE when asked.
  • All looks promising so far.
  • As a student (different GitHub account), I then “accept” the Classroom invitation for the assignment. It imports the repo for the student account, and adds the Repl.it badge to the README file. All good.

Here’s where I have a problem:

  • As a student account again, I click the repl.it badge from the README inside the GitHub repo. I am simulating a student wanting to work on the project.
  • I am redirected to the repl.it website, and again log in (as student).
  • The problem is that the repl.it website redirects to “https://repl.it/github?message=NOT_FOUND”. It shows me the following:

message

  • No matter what URL I put, it won’t find the repo. I made sure I am getting the student’s repo (not the template).
  • So I tried something else… I thought as a student I will try and Create New Repl (blank) from scratch, and then later try and link the GitHub repo to it. But then it forces me to make the Repl public.

Does this mean that Repls created and connected to GitHub Classroom repos (which are allowed to be private) have to be public on the Repl interface side of things? If so, this means we cannot use Repl.it (although I would like to), because I cannot request students to upgrade their Repl.it account to the paid version. I also don’t want students using public Repls if that’s the limitation of the free Repl account.

I think I must have missed an important step in the workflow above. I would have expected at some stage I tell Repl.it that all (student) accounts connected to certain GitHub repos (i.e. for the course) are to be associated with a private Repl, and to not require students to have a paid Repl.it account.

Or maybe I need to update my (staff) Repl.it account to specify I am a teacher? Unfortunately the paid Repl.it Classroom account isn’t feasible for us – we have about 400+ students a semester.

Thanks heaps!

I had the same sort of issue too - and I think it happens when the student hasn’t yet signed into Repl.it when clicking the ‘Work in Repl.it’ button.

Here’s a reproduction of the error and how to get around it.

Creating assignment (teacher view). Make sure you’ve authorised Repl.it to access your organisation.

Repl.it 1

Accepting assignment (student view). This is what seems to happen if the student isn’t signed in to Repl.it:

Repl.it 2

And this is what happens the second time (after signing in to Repl.it):

Repl.it 3

It seems that the clone operation did work the first time, but something on the sign-in side goes awry. Both repls (and Github repos) are private as well.

As for why this happens - I’m not too sure. @d12 will probably be able to help out!

Hope that works for you!

1 Like

Thanks heaps Scott! Just tried again using the exact workflow you detailed, and it worked!

I initially only gave Repl.it access to the repo being used for the assignment, but when I followed your example I gave it access to the entire set of repos. Maybe that was one difference that helped. The other difference was already being logged into Repl.it (as a student) before clicking on the Rept.it badge from the cloned GitHub repo.

Thanks again.

1 Like

Hi, @nasuoa, @Scott3142,

Thanks for reaching out! Glad you’ve sorted the issue, and thanks for all the feedback! We’re working hard improving the experience before our full launch later this month. I believe our engineers are looking into solving the strange behavior that happens when your student isn’t authenticated to Repl.it when they click the button. Should be fixed up soon!

Nathaniel

Thanks heaps Nathaniel.

1 Like
© 2017 GitHub, Inc.
with by
GitHub Education