Inspiration

In Between started from something personal.

I was born in Chongqing, China and adopted into the United States as a child. Growing up, I always knew adoption was part of my story, but I did not always know how much it shaped the way I thought about identity, culture, family, belonging, and where I came from. There are also parts of my story I do not know, including my birth family and pieces of my early life. :contentReference[oaicite:0]{index=0}

As I got older, I started thinking more about how different every adoptee experience can be. Some people want to reconnect with culture or search for birth family. Some do not. Some think about adoption often, while others barely do.

That became the starting point for In Between.

I wanted to create a place where adoptees could meet people who understood some of those experiences without needing the full explanation first. At the same time, I did not want every conversation to have to be about adoption. I wanted room for friendships, family, careers, culture, ambition, everyday life, and all the other things that make someone a person.

That is also where the name came from. "In Between" can mean being between cultures, identities, places, or simply being in a stage of life where you are still figuring out where you belong. :contentReference[oaicite:1]{index=1}

I am still figuring out my own story too, so I do not want the platform to be built only around my experience. I am treating the current product as a hypothesis and moving it through user research, interviews, and validation before deciding what should become permanent. :contentReference[oaicite:2]{index=2}

What it does

In Between is a growing community concept for adoptees across backgrounds, cultures, and life stages. :contentReference[oaicite:3]{index=3}

The current prototype explores a few main ways people could connect: community conversations, longer-form stories, smaller circles, connection profiles, gatherings, and a privacy-conscious community map.

The Community area is meant for both serious and ordinary conversations. Someone might ask a difficult question about adoption, share a story about reconnecting with culture, or simply post about something funny that happened that week. Participation can be designed around aliases, anonymity, and different levels of visibility. :contentReference[oaicite:4]{index=4}

The platform also explores smaller spaces where people can find others with shared context, such as similar life stages, interests, cultural questions, or experiences with reunion and identity. The goal is to make connection feel more personal than simply joining one large feed. :contentReference[oaicite:5]{index=5}

One of the biggest experiments is the connection map. Instead of displaying individual locations, it is designed around broad geographic patterns, aggregated groups, and consent. The current map uses fictional data while I test whether the concept is actually useful. :contentReference[oaicite:6]{index=6}

How I built it

I built In Between as a full-stack application using Next.js, React, TypeScript, JavaScript, CSS, PostgreSQL, Supabase, Cloudflare, Resend, Kit, and server-side APIs. :contentReference[oaicite:7]{index=7}

I wanted the design to feel calm and human rather than like a typical social platform, so I used editorial typography, warm colors, visible grids, story-driven layouts, and restrained interaction patterns. :contentReference[oaicite:8]{index=8}

Privacy became part of the technical architecture from the beginning. The waitlist uses a server-only PostgreSQL connection with no public read endpoint. Location search keeps only broad location data such as city, region, and country rather than precise addresses or coordinates. Private founder contact requests are handled separately, and public forms are protected with Cloudflare Turnstile and rate limiting. :contentReference[oaicite:9]{index=9}

Email updates are optional and use double opt-in, and the application is deployed through Cloudflare using preview environments so I can test changes before promoting them. :contentReference[oaicite:10]{index=10}

Challenges I ran into

The hardest challenge is building for a community I am personally part of without assuming my experience represents everyone else's.

I can design features based on what I think would be useful, but that does not mean they solve a real problem for other adoptees. That is why interviews and usability testing are becoming such an important part of the project. :contentReference[oaicite:11]{index=11}

Another major challenge is balancing connection with privacy. Knowing there are adoptees nearby could be valuable, but exposing someone's precise location would be inappropriate. That led me toward broad locations, aggregated groups, consent-based profiles, and separation between different kinds of user data. :contentReference[oaicite:12]{index=12}

I also wanted to be honest about what is actually built. Instead of presenting the prototype as a fully operating community, unfinished concepts are labeled as previews, examples, or fictional data. :contentReference[oaicite:13]{index=13}

Accomplishments that I'm proud of

I am proud that In Between became more than a landing page.

It now has a real technical foundation with a private waitlist, protected server-side forms, optional email updates, privacy-conscious location handling, rate limiting, contact workflows, and a functioning product prototype. :contentReference[oaicite:14]{index=14}

I am also proud that I built something connected to my own life while still being careful not to make the entire product about me.

Most importantly, I did not try to make the project look more finished than it is. The fictional map data, preview community features, and illustrative stories are clearly labeled. For a product involving real people's identities and experiences, that honesty matters to me. :contentReference[oaicite:15]{index=15}

What I learned

The biggest thing I learned is that building software and building a product are not the same thing.

When I started, my instinct was:

I have an idea. I should build it.

Now I think more like:

I have a hypothesis. How can I find out whether it is true? :contentReference[oaicite:16]{index=16}

That shift has changed how I approach the project. I am learning to ask better questions, test assumptions, collect less data when possible, delay features when they are not validated, and be willing to remove ideas that do not solve a real problem. :contentReference[oaicite:17]{index=17}

Technically, I learned a lot about full-stack development, PostgreSQL, Supabase, Cloudflare, rate limiting, privacy-conscious location systems, email integrations, and deployment.

But the more important lesson has been moving from building what I imagine people need to building based on what I can actually learn from them.

What's next for in between

The next phase is user research and validation.

I am beginning interviews and usability testing with adoptees from different backgrounds, life stages, and relationships with adoption. The goal is to understand the actual problems people face, how they currently find community, what makes them trust or avoid a platform, and which of the current concepts are genuinely useful. :contentReference[oaicite:18]{index=18}

From there, I plan to synthesize recurring needs, pain points, motivations, trust concerns, and privacy expectations. Then I will compare those findings against the current product.

Some features may become priorities. Some may change. Some may disappear completely. :contentReference[oaicite:19]{index=19}

Rather than launching everything at once, I want to test smaller versions of the strongest ideas first and eventually move toward a limited early-community launch.

The product process I am trying to follow is:

Listen → Build → Test → Learn → Change → Repeat

I started In Between because adoption is part of my own story.

Where it goes next should be shaped by many more stories than mine. :contentReference[oaicite:20]{index=20}

Built With

Share this project:

Updates