The 30-day playbook

Launch your own NeighborhoodOS.

The install is the wrapper. You supply the neighborhood, the conversations, and the AI. This page is the honest version of what that actually takes over the first 30 days.

Read this first

There's no one-click "launch a neighborhood" button, and anyone selling you one is lying. The reason most civic software fails is that it treats the software as the product. The software isn't the product here. Trust is the product. The software is just the wrapper that makes showing up reliably a little easier.

What you'll do over the first 30 days is mostly talk to people. Roughly 20 conversations. The software helps you remember what they said, spot patterns, and pick one sharp wedge to build around. You bring the neighborhood. You bring your own AI (OpenAI key, Anthropic key, or a local Ollama). We bring the wrapper.

Honest pre-flight check. If you're not willing to knock on 20 doors, go to three meetings, and hear "no thanks" out loud a few times, this isn't the right tool yet. Save yourself the install. Come back when the neighborhood feels loud in your head.

What you'll end up with at day 30

One chosen wedge

A single concrete pain that passes the four-test filter and has at least 3 neighbors ready to try v1.

A node profile

Your neighborhood's boundary, key civic contacts, meeting schedule, and the five loudest pain patterns from your intake conversations.

A running local install

SQLite DB, ingest scripts pointed at your city's open data, weekly digest in your inbox. Data stays on your machine.

A v1 plan

A one-page plan for the ugliest possible version of the tool that solves your chosen wedge inside 90 days.

The phases

  1. Pre-flight — before you touch code
    Day 0 · 2-3 hours

    Write a one-page NODE.md about your neighborhood. Boundary. Roughly how many households. Existing groups (HOA, neighborhood association, block captains, Facebook group). What civic meetings already happen and who shows up. What's broken that everyone already complains about. You'll update this as you learn.

    Decide who else is in on this with you, even loosely. One person alone can start a node. One person alone can't sustain one.

    • Template: wedges/_template/NODE.md in the repo
    • Budget: a notebook, a neighborhood map, and a coffee meeting with one ally
  2. Install — wrap the work
    Day 1 · 30 minutes

    Clone the repo, install dependencies, point the ingest scripts at your city's open data portal (Socrata, ArcGIS, or your local equivalent), and drop in an AI key.

    git clone https://github.com/simonlpaige/neighborhoodos.git
    cd neighborhoodos
    npm install
    cp .env.example .env
    # edit .env: add OPENAI_API_KEY or ANTHROPIC_API_KEY or OLLAMA_HOST
    # edit connectors/cities.json: add your city's open data endpoints

    If your city doesn't have open data, that's fine. Skip the connectors for now. The intake and wedge work still runs.

    • Supported AI: OpenAI, Anthropic, any Ollama model locally
    • Your data never leaves your machine. The AI calls are routed through whatever key you provide.
  3. Listening — the actual work
    Days 2-20 · ~20 conversations

    This is the phase where real nodes are made and fake ones die. Talk to 20 neighbors. Start with the loud ones (block captains, long-timers, the person who runs the Facebook group). Move to the quiet ones (people who moved in recently, elderly homeowners, renters if your wedge includes them).

    The intake tool in the repo gives you a 12-question conversation guide and stores the anonymized notes in your local DB. After each batch of 5 conversations, run node intake/summarize.js and it asks your AI to pull pain patterns across them.

    • Bring snacks. Seriously.
    • Go to 2-3 existing civic meetings. Listen more than you talk.
    • Record which pains come up repeatedly, not just the loudest one once.
    You'll feel like you have nothing after week 2. That's normal. Patterns don't show up until around conversation 12. Keep going.
  4. Wedge selection — pick one pain
    Days 20-25 · one evening, then sleep on it

    Run node wedges/suggest.js. It hands your intake summary to your AI with the four-test filter baked in. You get 2-3 candidate wedges ranked on:

    • Concrete. Can you describe it in one sentence at a kitchen table?
    • Costly. Are people losing money, time, or dignity to it right now?
    • Local. Does the solution work at the block level without waiting on city hall?
    • Swappable. If you build the wrong thing, can you stop without tearing out the platform?

    The AI recommends. You decide. Pick one. Write the chosen wedge into wedges/your-wedge/README.md. Tell three of the neighbors who showed up strongest in intake that this is what you're building toward, and ask if they'll try v1.

  5. Scaffold — the ugliest v1
    Days 25-30 · a weekend

    Run node wedges/scaffold.js your-wedge. It creates a folder with an ingest script, a local data model, a basic CLI, and a README stub. It does NOT build you a product. It gives you the skeleton so you can start filling in what YOUR wedge actually needs.

    The ugliest possible v1 is usually: a spreadsheet-or-SQLite list, one script that updates it, and one human (you) sending a weekly text message to the neighbors who opted in. That's fine. Ship that. Every fancier version is built on top of that skeleton once it earns trust.

    • No users yet = no product yet. Get 3 real users before you write your second feature.
    • Toothbrush test: does anyone use this twice a week? If not, the wedge is wrong, the UX is wrong, or it's both.
  6. Run, listen, rotate
    Day 30+ · ongoing

    After 90 days, check the signals below. If the wedge is working, keep running it and queue the next one. If it isn't, rotate the wedge. The platform stays, the wedge changes. This is the whole point.

Signals at 90 days

Working

20+ households have used the tool once. 3+ named "prevented a disaster" stories. At least one coordinated block-level job where real money was saved. Neighbors bring other neighbors without you asking.

Not working

Fewer than 10 households have touched it. You're the only one talking about it. The people who said "yes, try it on me" at intake have gone quiet. Rotate the wedge. No shame. The platform stays.

What NeighborhoodOS is not

Ready?

Start with the repo

The install is the easy part. The first real step is writing your NODE.md and lining up your first 5 conversations. Clone the code when you're ready for day 1.

Browse the code Back to home

Questions? Open an issue on GitHub, or if you're piloting in a neighborhood and want to compare notes, reach out through simonlpaige.com.