Inspiration

At our school in Verona, Italy, information is spread across ClasseViva, Google Classroom and Campus, the school's learning platform. Homework and reminders are not always recorded in the electronic register. Missing a day means checking several places to understand what happened, what to study and what to bring next time.

We wanted to make catching up easier while encouraging classmates to help one another.

We formed our team on September 20, 2026, after discovering that the competition had already started. Our computer science teacher encouraged us to discuss our ideas with our headteacher and build something that could remain useful beyond the competition. We met her the following day and later chose to develop Recapp from scratch.

What it does

Recapp gives the class a shared daily recap, written after school by a rotating student note-taker.

The note-taker records what happened in each subject, shares notes, adds homework and tests, and includes reminders such as materials to bring to the next lesson. Lab blocks preserve practical details: the goal, a repository or link, a mistake to avoid and what to bring next time.

  • Today: the day's lessons, the note-taker and publication status.
  • Yesterday: the latest published recap, with subject summaries, notes and lab details.
  • Upcoming: homework, tests and events organized by date, with a personal checklist.
  • By subject: earlier recaps grouped by subject.
  • Replies and sharing: corrections from classmates and a recap image to share in the class chat.

The editor starts from the timetable. Students can paste text or upload cropped screenshots and use AI to extract draft items, which they review, edit or discard before publication.

If the recap has not been published by 18:00, another classmate can take over the turn.

The interface supports Italian and English, light and dark themes, desktop and mobile layouts, and browser-based read-aloud functionality where available.

Recapp is useful both for absent students and for classmates who attended but want to revisit notes and upcoming deadlines. It complements the official school platforms without automatically accessing or synchronizing them.

How we built it

We built Recapp with React, TypeScript, Vite and Tailwind CSS on the frontend, and FastAPI with SQLModel on the backend.

The project supports SQLite for local development and PostgreSQL for deployment. The documented hosting setup uses Docker on Render and Neon PostgreSQL.

The extraction pipeline supports Featherless models for text and screenshots, with optional background execution through Render Workflows. Local development can instead use a rule-based text parser and simulated image extraction. Every extracted item remains a draft until a student reviews it.

The repository includes pytest API tests, Playwright browser tests, TypeScript build checks and linting.

Challenges we ran into

Time was one of our biggest challenges: we discovered the competition after it had already started, and we had to coordinate development around school, sports and other commitments.

This was our first project together as a team of three, so we had to learn how to organize our work. We encountered bugs along the way and resolved them by analyzing the problems.

We also challenged ourselves to consider different students' perspectives, aiming to make Recapp useful beyond our own individual needs.

Accomplishments that we're proud of

We are especially proud of Recapp's interface: it came close to what we had imagined, and seeing our ideas take shape was rewarding.

We also learned to coordinate as a team and turn those ideas into a working app. Regardless of the competition's outcome or whether our school adopts it, we believe the project is worth developing further.

We hope it can eventually help students in other schools and countries who face similar challenges.

What we learned

We learned how to work together and combine our different perspectives. Luca became more confident using Cursor, while all of us gained a better understanding of which AI models to use for different tasks.

Building something for a school problem we experience every day made the project especially meaningful and enjoyable.

Above all, we learned how valuable it is to involve the people who will actually use what we build, because their experiences help reveal what matters in practice.

What's next for Recapp

We are currently testing Recapp within our team. Our headteacher has heard the idea and asked us to keep her updated; the school has not yet adopted the application or agreed to a classroom pilot.

After the competition, we plan to present the developed project, gather feedback and adapt it to the school's needs. We hope to agree on a pilot with two or three classes before considering wider use.

Possible future improvements include signing in with school Google accounts and additional measures for use within the school. These steps still need to be discussed and agreed with the school.

AI-use disclosure

During development: our team collected the original ideas and defined the problem from our experience as students. We used AI to expand those ideas and explore architectures. Planning and initial implementation started in Cursor; Cursor and Claude then helped us implement features, fix bugs and improve the application. Codex also assisted with implementation, debugging, tests, reviews and documentation, including preparing this project story from our own answers. AI contributed substantially to the code.

For design: we used ChatGPT to generate the Recapp logo and some graphics, and manually modified some results. The school's logo is a separate asset.

Inside the application: the optional Featherless integration turns submitted text and cropped screenshots into draft items. A student reviews the results before publication. The offline parser and simulated image output are distinct from live AI inference. The Listen feature uses browser speech synthesis.

Our team

We are three fourth-year Computer Science students at ITI G. Marconi in Verona, Italy:

  • Leonardo Bassanello: team coordinator, project originator and developer.
  • Luca Cremonese: developer, beta tester and bug testing.
  • Oleksii Holovan: developer, beta tester and video creator.

The code is open source under the MIT license. The school's logo is excluded from that license. Our computer science teacher confirmed that we could display it in this student project; its presence does not imply school adoption.

Built With

Share this project:

Updates

Submission history