Building NYCRSVPs.com

June 11, 2024


Recently, I built and launched nycrsvps.com, a very simple HTML/CSS/JS website that I built to make it easier to track and remember when reservations open at popular NYC restaurants.

Image of nycrsvps.com homepage.

It has two main pages: a data table with when reservations open at various restaurants (shown above), and a calculator to help you anticipate when reservations open for a desired date and set a reminder to book.

Image of the nycrsvps.com reservation open date calculator.

This was a fun side project that both helped me pick up some new web dev skills and helped me snag some reservations that I had been trying to make for a long time - in particular, Lilia and Raoul’s.

I wrote a bit about my takeaways from conceptualizing, creating, and launching NYC RSVPs:

The power of open source

I minored in computer science and work for a developer tools startup that leverages open source projects in our own project, and sponsors open source projects that further the ecosystem.

I know, on paper, the value of open source. I laugh, knowingly, at the classic xkcd meme:

XKCD meme showing the world's dependence on open source

But wow, the process of building this genuinely tiny website (two pages, raw HTML + JS + CSS, no frameworks) made the criticality of open source sink in.

Could I have built this functionality by scratch? Maybe, but it would have taken me much, much, longer. Instead, these humans generously offered up their time and talents, so that I could do in minutes what might otherwise be immensely challenging.

Software runs on open source. I knew that, but now I know that. And if my two-page, no-framework, no-backend app relies this heavily on open source projects maintained by generous individuals, what does that mean for far more complex projects, and for our world’s digital infrastructure?

Using AI to code

… is only ok. Over the course of creating NYC RSVPs, I tried out a range of AI-based coding helpers, including asking chatbots like ChatGPT and Claude, as well as experimenting with IDE-based tools like GitHub CoPilot and Cursor.

First, the (very meaningful) pros:

Next, the cons:

After my initial learning process, I made two big changes:

  1. Using an in-IDE AI: I switched over to using Cursor as my primary source for AI input, which I found gave better suggestions in the context of my broader codebase vs. GitHub CoPilot and definitely vs. copy-pasting from an AI chatbot
  2. Adapting my prompting & process: I tried to be more thoughtful about reading through each line of the AI’s code, and explicitly prompting it to include documentation and accessible, descriptive naming. That improved both my troubleshooting and the quality of my code.

In summary, AI can certainly write more code, faster, and but it’s still our responsibility to make sure that it’s good code.

Just do it ✔️

I was nervous to share this project. The code and design are pretty amateur, and it was my first real foray into building something solo.

But when I shared it anonymously on Reddit, people were really encouraging! And then when my boyfriend shared it with a lot of our friends, they were super supportive, and excited to put it to use. It was a good reminder that it’s worthwhile to put yourself out there.

Overall, I was happy with the outcomes of my Reddit launch, with the post seeing >15K views, and >1K unique visitors checking out the site. But what was cooler was getting to watch the project grow organically as more people found it and as it got more SEO traction with Google. Here’s the latest visitor chart:

Image of nycrsvps.com weekly active users over the last 90 days, showing ~300 or so users per week

Some people bounce immediately, but other people use it more like I do - staying for 5, 10, 15 minutes at a time to schedule a bunch of reminders to snag reservations over the next few months. So that’s pretty cool. And I even got my first user input (which, fortunately, was easy to implement, too:

An email requesting a new restaurant be added to nycrsvps.com

Now what?

There are a lot of different angles that I could take this project in the future if I wanted to! A few ideas include: