DEV Community

Alex Spinov
Alex Spinov

Posted on

Rallly Has a Free API: Open-Source Meeting Scheduler That Replaces Doodle

What is Rallly?

Rallly (yes, three L's) is an open-source scheduling tool — a Doodle alternative for finding the best meeting time. Create a poll, share the link, participants vote on time slots.

No account required for participants. Free. Self-hostable.

Self-Host

git clone https://github.com/lukevella/rallly
cd rallly
docker compose up -d
Enter fullscreen mode Exit fullscreen mode

How It Works

  1. Create Poll: Choose dates and time options
  2. Share Link: Send to participants
  3. Vote: Participants mark availability (Yes/If need be/No)
  4. Result: Best time is highlighted automatically

The API

export RALLLY_URL="https://your-rallly.com/api"
Enter fullscreen mode Exit fullscreen mode

Create Poll

curl -X POST "$RALLLY_URL/polls" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Team Standup Time",
    "description": "Vote for the best standup time",
    "location": "Google Meet",
    "options": [
      {"startDate": "2026-04-01T09:00:00Z", "endDate": "2026-04-01T09:30:00Z"},
      {"startDate": "2026-04-01T10:00:00Z", "endDate": "2026-04-01T10:30:00Z"},
      {"startDate": "2026-04-01T14:00:00Z", "endDate": "2026-04-01T14:30:00Z"}
    ]
  }'
Enter fullscreen mode Exit fullscreen mode

Get Poll Results

curl -s "$RALLLY_URL/polls/POLL_ID" | jq '{
  title,
  participants: [.participants[] | {name, votes: [.votes[] | {optionId, type}]}]
}'
Enter fullscreen mode Exit fullscreen mode

Add Participant Vote

curl -X POST "$RALLLY_URL/polls/POLL_ID/participants" \
  -d '{
    "name": "Alice",
    "votes": [
      {"optionId": "opt_1", "type": "yes"},
      {"optionId": "opt_2", "type": "ifNeedBe"},
      {"optionId": "opt_3", "type": "no"}
    ]
  }'
Enter fullscreen mode Exit fullscreen mode

Add Comment

curl -X POST "$RALLLY_URL/polls/POLL_ID/comments" \
  -d '{"authorName": "Bob", "content": "I prefer morning slots!"}'
Enter fullscreen mode Exit fullscreen mode

Features

  • Time zone support: Each participant sees times in their local zone
  • No login required: Participants just click the link
  • Comments: Discussion thread on each poll
  • Finalize: Mark the winning option when decided
  • Email notifications: Optional updates when others vote
  • Dark mode: Beautiful, clean UI

Tech Stack

  • Frontend: Next.js + Tailwind CSS
  • Backend: tRPC + Prisma
  • Database: PostgreSQL
  • Email: Any SMTP provider

Rallly vs Doodle

Feature Rallly Doodle Free
Open source Yes No
Self-host Yes No
Ads None Yes
No login voting Yes Yes
Time zones Auto Manual
Polls Unlimited 1 active
Cost Free $6.95/mo for premium

Need scheduling tools or productivity automation?

📧 spinov001@gmail.com
🔧 My tools on Apify Store

Doodle, When2meet, or Rallly? How do you schedule meetings?

Top comments (0)