DEV Community

Cover image for Bringing people together with Neighborly
Yeshua
Yeshua

Posted on

Bringing people together with Neighborly

This is a submission for the GitHub Copilot Challenge : Fresh Starts

What I Built

I built Neighborly, a platform designed to bring local communities and neighborhoods together. By fostering connections and encouraging participation, we help you make informed decisions and foster a sense of unity and growth, building a stronger, more united community.

With Neighborly, community leaders can:

  • Create an online community for their local community

  • Send invites: Seamlessly invite new members to join the platform.

  • Gather feedback: Enable members to share their thoughts and ideas to improve the community.

Neighborly’s mission is to strengthen relationships, encourage collaboration, and create more engaged and active local communities.

How was this built in 24 hours?

The simple answer is planning. Within 3 days I had settled on what type of app to build based on what was going on around me. I then used the rest of the days to search out for templates and components to use. Truth is, I had previously written similar logic implemented in Neighborly about a month ago or so over here, so integrating it wasn't so hard for me. The main challenge was seeing the end of the app from the beginning. This is what I mean: I could envision the app before I built it, but nothing always goes as planned. I had to keep refining ideas to really build out what I saw in my mind. Time was also not really on my side so MVP was the only reasonable thing to do. Here are some of the resources I used:

Simplified App Anatomy

  • A member can't be a part of multiple communities (Since you can't be a member of two physical communities at the same time)
  • If you are a member of a community, you can't join another community unless your community leader removes you from your current community.

Demo

Try out the app here: https://neighborly-github.vercel.app

Dashboard

Members

Feedback

Repo

https://github.com/lucky-chap/neighborly

Copilot Experience

GitHub Copilot was an invaluable assistant throughout the development of Neighborly. Here are some of the ways it helped:

Idea Generation

When brainstorming features for the MVP, I used Copilot to prototype several ideas quickly. By providing simple prompts like “What main features does this app need?” or “Which features define the core of the app?” I was able to iterate rapidly.

Code Suggestions and Autocomplete

Copilot’s autocomplete feature was particularly helpful when writing repetitive or boilerplate code, such as form validation, component generation and API integration with Convex. It learned from my convex files and could further help me by providing boilerplate. Another thing is, it assisted in creating a REST API endpoint to handle file upload with minimal manual effort. All I had to do was tweak it a little bit to fit what was in mind.

Error Resolution

Debugging became more efficient with Copilot’s suggestions. It not only pointed out syntax errors but also recommended fixes for common pitfalls, like explicitly infering types on objects. Since Convex uses TypeScript, it was also way easier for Copilot to provide suggestions based on the type of data coming from the Convex backend.

GitHub Copilot Chat

The chat feature was a game-changer for seemingly easy yet boring and time-consuming tasks. I used it to change parts of my code that would have taken too long for me to manually change or update.

Model Switcher

Experimenting with different GitHub models allowed me to tailor the code generation to the app’s specific needs. The models provided a balance of creativity and precision that made development smoother. The variety of outputs was something I thought was cool. (I think Claude is more accurate)

GitHub Models

I unfortunately could not use GitHub Models this time. I hope to use it some other time in my own projects and see what it's all about.

Conclusion

Participating in the GitHub Copilot 1-Day Build Challenge was an enriching experience. Copilot’s capabilities allowed me to focus more on the creative aspects of building Neighborly, while minimizing the time spent on repetitive and boring tasks. The result is an MVP that showcases the potential for technology to bring communities closer together.

Looking ahead, I’m excited to expand Neighborly with more features, such as direct messaging and advanced event management. I also plan to integrate user feedback into the development process to ensure that Neighborly meets the evolving needs of its communities.

Thank you, GitHub Copilot, for making the development process seamless and enjoyable!

Top comments (0)