StudyGuild is a web app that lets a student announce "I'm studying for this exam, on this day" and lets everyone else taking the same subject at the same university find that session, join it and talk in a built-in chat. Guillermo Coelho, a computer engineering student at FING, the engineering faculty of Uruguay's Universidad de la Republica (UdelaR), built it after a study group found purely by luck turned things around in class, and designed it so nobody else would have to rely on luck.

  • Students create "reunions", study sessions tied to a subject, a date and a public or private visibility; classmates join and chat inside them.
  • The hardest design problem was organising people, and Guillermo solved it by grouping students by university and degree.
  • It has an English and Spanish interface in a cozy 8-bit style, a React 19 front end and a back end being rewritten from Rails to Django.
  • The server is offline for now; the code is public in two repositories.
How StudyGuild connects students studying the same subjectAn institution has degrees and subjects. A student creates a reunion for one subject with a scheduled time and public or private visibility. Other students at the same institution browsing that subject see the reunion, join it and use its chat to organise. FROM LUCKY INTRODUCTION TO SEARCHABLE SESSION Institutione.g. FING, UdelaR Degree + subjectimported course lists Reuniondate, public or private STUDENT WHO CREATES "Exam next week, studying Tue 18:00" posts a reunion for the subject STUDENTS WHO JOIN browse their subject, see it join, then organise in the chat Extras: student groups with invitations, profiles, newsletter, issue reports, EN/ES answer: study groups you can search for, not stumble into genztech.blog
Fig 1 The whole data model hangs off one idea: a study session belongs to a subject, and a subject belongs to a degree at a specific university, so you only ever see sessions that are relevant to you.

What does StudyGuild do?

"StudyGuild helps students find other students that are studying for the same subject and create reunions," Guillermo told us. "For example an exam is due next week, so a student creates a reunion to study for it, other students can see it, join and interact through chat for organizing or exchanging numbers." In the app a reunion is a study session with a subject, a scheduled date and time, an optional title and description, and a visibility setting: public, so anyone in that subject can find it, or private, for a student group that already exists. Groups have their own invitation flow, every student has a profile, and each reunion carries its own message thread.

RelatedThis Student Built a Media Server That Never Touches Your Data Plan

Why did Guillermo build it?

"StudyGuild was an idea that occurred to me after joining a study group in university, which helped me a lot in my studies," Guillermo said. "Before that I was having some trouble getting through subjects. The group I joined was just a coincidence of a friend that knows a friend and so on." That last sentence is the product brief. Study groups are one of the most reliable ways to get through a hard course, yet at a big public university the way most students find one is exactly what Guillermo described: a chain of acquaintances. If you do not happen to know the right person, the group that would have helped you simply never appears.

That matters more at a university like UdelaR, Uruguay's main public university, where large first-year cohorts make it easy to sit in a lecture hall for a semester without knowing who else is preparing for the same exam. StudyGuild turns the friend-of-a-friend chain into a list you can browse.

What was the hardest part to design?

"One of the hardest things the project required was the modeling of these reunions and how students would join or find them," Guillermo said. "At the end I decided to group students by university and careers, so it's easier for them to join reunions of their interest." It sounds like a small decision, but it is the one that decides whether an app like this feels alive or empty. Scope it too wide and a student scrolls past sessions for courses they will never take. Scope it too narrow and every list is blank. Anchoring everything to an institution, then a degree, then a subject means a student only sees sessions for courses on their own programme.

To make that work without anyone typing in hundreds of courses by hand, the back end includes an import command that loads scraped subject lists into an institution, so a new university's catalogue can be seeded in one step. The rules live in the data model too: a reunion must have a scheduled time and a visibility, is indexed by date, subject, creator and group for fast browsing, and validates its subject, creator and group together whenever it is saved.

TraitStudyGuildClass group chat
How you find a groupBrowse sessions for your subjectSomeone has to add you
ScopeYour university and degreeWhoever is in the chat
Session detailsDate, subject, public or privateBuried in messages
LanguageEnglish and SpanishWhatever people type

How is it built?

The front end is React 19 with TypeScript and Vite, styled as what the repository calls "an 8bit cozy" site, with pixel-art artwork of adventurers studying around a candlelit table and a pixel landscape background. It has pages for the homepage, login, profiles, public profiles, creating and viewing reunions, student groups, a newsletter with its own admin page, and an issue-report system with status tracking, and the whole interface ships in English and Spanish.

The back end is mid-migration, which the repository documents openly. The original API was written in Ruby on Rails, and Guillermo is rewriting it in Django 5 with Django REST Framework, JWT authentication and an OpenAPI schema, while keeping the Rails error formats so the React front end does not have to change. The README tracks the rewrite in phases: the scaffold, custom user model, authentication and institution model are done, and the remaining models, business rules and deployment are still ahead.

RelatedThis Student Built an Alarm That Guards a Codeforces Streak

What happens next for StudyGuild?

"I used to have a server up but didn't have much time to maintain and promote it so people could join, that's why I just saved it for later," Guillermo said. Guillermo admitted the project had been left behind because it was not clear it would be used, at least in Uruguay. That is the honest reality of a social app: the code can be finished and it still needs enough students in the same subject at the same time before it becomes useful. The Django rewrite and the subject importer are exactly the pieces that make relaunching cheaper, one university at a time.

Our take

StudyGuild is a small idea aimed at a real gap, and it comes from lived experience rather than a hackathon prompt: a student who was struggling with courses until a lucky introduction led to the right group. The engineering choices are sensible, especially scoping everything by university and degree, and the openly documented Rails-to-Django migration shows someone learning how real software evolves. What it needs now is not more features but users. If you study at UdelaR, or run a student association anywhere, this is a project worth pointing people at.

StudyGuild was built by Guillermo Coelho, a computer engineering student at FING, Universidad de la Republica, Uruguay. The code is open: front end · back end · guillecoelho.github.io.

Campus Radar, get featured
  • Built something? Doesn't need to be finished or fancy: a side project, a hackathon build, or a class project you're proud of counts.
  • Email hello@genztech.blog with what you built, why you built it, a link, and your name plus college.
  • See every spotlight so far at genztech.blog/campus-radar.
Primary sources

Reporting based on a direct interview with Guillermo Coelho and the public StudyGuild repositories. Hero artwork from the StudyGuild repository.