Run your team's weekly paper reading group from one board
Nominate arXiv papers, vote on the week's pick, assign a presenter, and get the session on the calendar and into Slack.
Build me a reading group board for my team's weekly paper session. It is a shared app that anyone on the team opens: they nominate papers, upvote the ones they want to read, and we run the weekly session from the same screen. Nominations, votes, sessions, presenter history and notes all persist inside the app, because arXiv is a read only public API with nothing to write back to.
Nomination screen. A search box that calls arXiv Search Papers by keyword, author, title or subject category and shows each result with its title, authors, submission date and abstract, plus a Nominate button. Next to it, a field where someone can paste an arXiv ID (accept both the bare ID like 2310.06825 and a full arxiv.org link, parsing the ID out) which pulls the paper with arXiv Get Papers by ID. Also allow a manual entry with a typed title and link for the occasional paper that is not on arXiv. When the queue is empty, show a browse view instead of a blank state: call arXiv List Recent Papers in a Category with a category picker that defaults to the team's configured categories such as cs.LG, cs.AI and cs.CL, so people can skim what is new and nominate straight from there. Cache arXiv responses within a session and space requests out, since arXiv asks for no more than one request every three seconds.
Nomination queue. Each nomination is a card showing the paper title, the full author list, the abstract, a link to the arXiv abstract page (https://arxiv.org/abs/ plus the ID), a PDF link, the name of the person who nominated it and when. Every card has an upvote control: one vote per person per paper, toggleable, showing the vote count and the names of the voters on hover or expand. Sort the queue by vote count with most recent nomination as the tiebreak, and let people filter or search within the queue. Papers stay in the queue with their votes until they are scheduled or explicitly dismissed.
Scheduling a session. When the team settles on a paper, the organizer opens that card, assigns a presenter from the team member list, and picks a date, time and duration, prefilled from the saved default session slot. Hitting Schedule session calls Google Calendar Create Event on the configured calendar: the event title carries the paper title, the team's email addresses go on as attendees, and the description contains the paper title, the link to the abstract page, the abstract text itself and the presenter's name. Store the returned event id and event link on the session record and show them on the card. Immediately after, post the announcement with Slack Bot Send a Message to the configured channel, including the paper title, the presenter, the date and time, the abstract link and the vote count that won it the slot. Show whether the post succeeded, and give the organizer a button to send a reminder message to the same channel closer to the session.
Archive. Once the session date has passed, or when the organizer marks the session done, the paper moves out of the queue into an archive view. The presenter attaches their notes and key takeaways as rich text on the archived record, and anyone on the team can add their own takeaways or discussion points underneath. The archive is the team's searchable record of everything read: filter by presenter, date, subject category or author, and free text search across paper titles, abstracts and the notes people wrote.
Fairness view. A presenter rotation panel listing every team member with how many sessions they have presented, the date they last presented and how many weeks ago that was, sorted so the people who have not presented in the longest time sit at the top, with anyone who has never presented flagged above them. Surface this same ordering inside the presenter picker when assigning a session, so the fair choice is the obvious one at the moment of assignment.
Roles and settings. Record the acting user on every nomination, vote, presenter assignment and note. Anyone can nominate, vote, read the archive and add takeaways. Scheduling a session, assigning a presenter and archiving are organizer actions, so keep those controls visible but disabled for everyone else rather than hiding them. A settings screen holds the team's invite email list, the Slack channel for announcements, the Google Calendar to book on, the default session day, time and length, and the default arXiv categories used by the browse view.
What does this prompt do?
- Anyone on the team nominates a paper by searching arXiv or pasting a paper ID, and it lands in a shared queue card with the title, authors, abstract and who suggested it.
- Teammates upvote the papers they most want to read, so the week's pick gets settled on the board instead of in a long chat thread.
- Once you pick a presenter and a date, the app books the session on Google Calendar, invites the team, and posts the announcement to your Slack channel so nobody misses it.
- After the session the paper moves into a searchable archive with the presenter's notes and key takeaways, and a fairness view shows who has not presented in a while.
What do I need to use this?
- A Google account with access to the calendar your sessions should land on
- A Slack workspace where the bot can post to your team's channel
- The email addresses of the people you want invited to each session
- Nothing for arXiv itself, since paper search is free and open to everyone
How can I customize it?
- Set the arXiv subject areas the browse view suggests when nobody has nominated anything yet, such as machine learning, statistics or biology
- Save your usual day, time and session length so every calendar invite comes prefilled
- Choose how far back the fairness view looks before it flags someone as overdue to present
- Pick which Slack channel gets the announcement and how the message reads
FAQs
Do we need an arXiv account to use this?
Can we discuss a paper that is not on arXiv?
Who can nominate and vote?
How does it know whose turn it is to present?
What happens to the papers we skip?
Will the Slack announcement notify the whole channel?
Related templates
Pick a date, a starting point and a radius, then build a sequenced day of customer visits that lands straight on your calendar.
See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.
One screen showing every social post waiting on approval, sorted by deadline, so reviewers can approve or reject without leaving the page.
Every Monday, find the past champions and closed-won contacts who changed jobs, update Attio, and get the moves worth chasing in Slack.
Staff submit what happened, your social manager edits the copy, picks the accounts and puts it on the calendar without a single spreadsheet.
Open one board each morning, see which voice calls went badly, replay the exact moment the caller got frustrated, and file the fix.
Stop rebuilding your paper club schedule every week.
Nominations, votes, the presenter rota and the notes all live on one board your team opens each week.