Gabe Perez

I Built My First Raycast Extension. Here's How I Did It!

I was inspired by @chrismessina to build my own Raycast extensions after he released his own! I have been using Raycast a lot more thanks to a gentle nudge from @jakecrump (and @Raycast's latest AI releases), so I knew I wanted to build my own Raycast extension at some point.

There was a lot of news about Cyberpunk for Mac released and I wanted to search if there was a deal for it on PC. I instinctively went to search Raycast….but it wasn’t there. So my extension idea was born!

My goal was simple: make it easier to hunt for video game deals right from the Raycast command bar. What followed was a rapid journey of prototyping, debugging, and learning. I’m excited to share what I learned and hope it will encourage more makers to ship their ideas.

You can view my IsThereAnyDeal (ITAD) Extension on GitHub here! I will launch it when it's approved on the Raycast store :) I'll publish a more in-depth, nerdy guide later. But for now...here's my experience building a Raycast Extension!

Tech Stack:

  • @Dia Browser: To digest and explore the Raycast & ITAD Documentation quickly while also feeding all the info into Cursor.

  • @Cursor & @Warp: I leaned on AI tools to write and check the code and ensure it complied with Raycast’s requirements. Cursor was helpful, but Warp really shined in debugging and even improved my code automatically.

  • @GitHub: Essential for versioning and collaboration and publishing the Raycast extension

The Process: Building with Focus and Simplicity

Start with the Core Action. From my experience in vibe coding I knew that I had to start simple and focused first. Since I knew “Is There Any Deal” (ITAD) had an API I decided to hone in on one simple concept, provide search results and pricing from ITAD using its API.

TIP: Keeping your first extension as simple as possible. Get the main action working before layering on user interactions or advanced features.

Iterate, Test, Repeat - It took me about a day but once the MVP was running, I focused on user experience. Frequent testing helped catch bugs early. Warp became my go-to terminal for troubleshooting and speeding up the feedback loop.

Version Control Is Your Friend - Always back up locally and on GitHub. Cursor broke my repo, but thankfully I had saved the latest version of my files locally, allowing me to recover without missing a beat. This habit saved my project and a few broken screens.

Learn Warp - Over the past month or so I’ve become using CLI’s like Gemini CLI and Warp a lot more. They’re quite powerful and can sometimes take more actions than a traditional IDE…or their approach on taking those actions is different at least.

For my Raycast Extension, I tried publishing it to Raycast 3x with Cursor and constantly failed. On my first attempt with Warp, not only did it publish it but it dramatically improved the code as well.

Personal Experience - I was pleasantly surprised after a day of hacking alongside Cursor, I had a rough MVP. It took me about a week to polish and submit it to the Raycast store. If I didn’t have to work, or parent, or be a normal human I feel like I could have gotten it up in 3 days.

I can’t say this enough but Warp really surprised me by making improvements I hadn’t thought of, making little things I wish I could change, into reality.

Getting Raycast extension approval is not as easy as I thought. Luckily, their team make really helpful comments and suggestions. So as long as you're paying attention to the pull request, you should hopefully make some progress towards getting it in the store.

Should You Build Your Own Raycast Extension?

Absolutely. Whether you’re a maker that’s just starting out, looking to streamline your workflow or just want to scratch a personal itch, Raycast’s ecosystem is a great place to start vibe coding and building. Remember to start small, iterate quickly, and don’t be afraid to take a step back and read some documentation if your AI tools get stuck. You can always ask Dia for help. The satisfaction of seeing your tool live, and in a handy application like Raycast, is well worth the effort.

Encouragement for Builders:

Don’t overthink your first extension. Focus, build, test, and ship

624 views

Add a comment

Replies

Be the first to comment