Nom is a social platform for your code activities. It turns raw GitHub activity (pull requests, pushes and releases) into readable, shareable updates for your community.
GitHub activity is noisy. Watching a repository gives you a firehose of raw events. Following a project's progress means constantly scanning issues, PRs, and releases to piece together what's actually happening. There's no easy way to share your project's story as it unfolds.
Nom connects to your GitHub repositories and uses AI to transform raw events into clear, human-readable feed posts, like a changelog that writes itself. Each update captures what changed, why it matters, and links back to the source. Community members can follow your project's feed without needing to watch the repo directly.
- AI-generated summaries of PRs, issues, releases, and comments, with configurable tone and style per event type (see example)
- Social feed: follow repositories, discover projects, and stay up to date in one place
- Real-time updates: new GitHub events appear in the feed as they happen
- Self-hostable: run your own instance with your own data
| Layer | Technology |
|---|---|
| Framework | Next.js |
| UI Components | shadcn/ui + Radix UI |
| Database & Auth | Supabase |
| Background Jobs | Trigger.dev |
| Data Fetching | Tanstack Query |
| AI | OpenRouter via Vercel AI SDK |
| Web Search | Tavily |
| Resend | |
| Validation | Zod |
The quickest way to use Nom is to install the hosted GitHub App:
Once installed, your project's activity will appear in your feed at nomit.dev.
See CONTRIBUTING.md for full local development setup, including:
- Prerequisites (Node.js, Docker)
- Supabase local setup
- Trigger.dev background jobs
- Environment variable configuration
# 1. Clone the repo
git clone https://github.com/nom-social/nom.git
cd nom
# 2. Install dependencies
npm install
# 3. Set up environment variables
cp .env.example .env.local
# Edit .env.local with your values (see .env.example for descriptions)
# 4. Start Supabase locally
npx supabase start
npx supabase db reset
# 5. Start background jobs
npm run trigger:dev
# 6. Start the app
npm run devThe app will be available at http://localhost:3000.
Nom uses per-event AI instructions stored in your repository's .nom/ directory. You can customize how your project's activity is summarized by editing these files:
.nom/pull_request_instructions.md.nom/push_instructions.md.nom/release_instructions.md
See the example instructions in this repo.
We welcome contributions of all kinds: bug reports, feature requests, documentation improvements, and code changes.
To get started:
- Fork the repository
- Create a feature branch
- Make your changes
- Open a pull request
