Your AI already knows how to code. Noderr teaches it how to engineer.
- Getting Started - Complete user guide and first steps
- Understanding Noderr - Deep dive into concepts and architecture
- Prompts Guide - Command reference for all workflows
- Visual Guide - Visual roadmap of files and structure
- Installation - Quick setup instructions
Noderr gives AI what every senior developer has: permanent memory and system understanding.
- Prepare Your Vision - Create blueprint, project overview, and architecture documents
- Build Initial Prototype - AI creates your first version based on the plans
- Install Noderr - Extract framework and reconcile with what was built
- Develop Systematically - Use the Noderr loop for all future development
Noderr documents what you ACTUALLY built, not just what you planned.
- Any AI assistant that can read/write files (ChatGPT, Claude, Cursor, etc.)
- Basic familiarity with AI-assisted coding
- A project idea (new or existing)
Every piece of your system gets a unique, permanent name:
UI_LoginForm- That specific login formAPI_AuthCheck- That specific authentication endpointSVC_TokenValidator- That specific validation service
Unlike traditional AI coding where the AI forgets what it built between conversations, NodeIDs give each building block a permanent identity that persists forever.
The Impact: Instead of "update the login", you can say "update API_AuthCheck" and the AI knows EXACTLY what you mean, even months later.
These NodeIDs aren't just labels - they live in a visual map (Mermaid diagram) that shows:
- WHERE each piece fits in your system
- HOW it connects to other pieces
- WHAT depends on it
graph TD
%% --- Legend ---
subgraph Legend
direction TB
L_IDConv[NodeID Convention: TYPE_DescriptiveName]
L_UI[/UI Component/] --- L_UIDesc(User Interface)
L_API{{API Endpoint}} --- L_APIDesc(REST API Routes)
L_SVC[[Service Layer]] --- L_SvcDesc(Business Logic)
L_DB[(Database)] --- L_DBDesc(Data Operations)
L_Decision{Decision} --- L_DecDesc(Conditional Flow)
L_State[["State Manager"]] --- L_StateDesc(Client State)
L_External{{External API}} --- L_ExtDesc(3rd Party Service)
end
%% --- Entry Flow ---
APP_Start((User Opens App)):::./noderr/specs/APP_Start.md --> AUTH_Check{User Logged In?}:::./noderr/specs/AUTH_Check.md
%% --- Authentication Subgraph ---
subgraph "Authentication System"
AUTH_Check -->|No| UI_LoginPage[/Login Page/]:::./noderr/specs/UI_LoginPage.md
UI_LoginPage --> UI_LoginForm[/Login Form/]:::./noderr/specs/UI_LoginForm.md
UI_LoginForm -->|Submit| API_Login{{POST /api/auth/login}}:::./noderr/specs/API_Login.md
API_Login --> SVC_AuthValidator[[Auth Validator Service]]:::./noderr/specs/SVC_AuthValidator.md
SVC_AuthValidator --> DB_Users[(Users Database)]:::./noderr/specs/DB_Users.md
DB_Users --> LoginResult{Valid Credentials?}:::./noderr/specs/LoginResult.md
LoginResult -->|No| UI_LoginError[/Show Login Error/]:::./noderr/specs/UI_LoginError.md
LoginResult -->|Yes| SVC_TokenGenerator[[Token Generator]]:::./noderr/specs/SVC_TokenGenerator.md
UI_LoginError --> UI_LoginForm
SVC_TokenGenerator --> API_Login
API_Login -->|Success| STATE_UserSession[["Store User Session"]]:::./noderr/specs/STATE_UserSession.md
end
%% --- Main Application ---
AUTH_Check -->|Yes| UI_Dashboard[/Dashboard/]:::./noderr/specs/UI_Dashboard.md
STATE_UserSession --> UI_Dashboard
subgraph "E-Commerce Flow"
UI_Dashboard --> UI_ProductGrid[/Product Grid/]:::./noderr/specs/UI_ProductGrid.md
UI_ProductGrid --> UI_ProductCard[/Product Card/]:::./noderr/specs/UI_ProductCard.md
UI_ProductCard -->|View Details| UI_ProductModal[/Product Details Modal/]:::./noderr/specs/UI_ProductModal.md
UI_ProductCard -->|Quick Add| STATE_CartManager[["Cart State Manager"]]:::./noderr/specs/STATE_CartManager.md
UI_ProductModal -->|Add to Cart| STATE_CartManager
STATE_CartManager -->|Update| UI_CartIcon[/Cart Icon Badge/]:::./noderr/specs/UI_CartIcon.md
UI_CartIcon -->|Click| UI_CartDrawer[/Shopping Cart Drawer/]:::./noderr/specs/UI_CartDrawer.md
UI_CartDrawer -->|Checkout| UI_CheckoutFlow[/Checkout Page/]:::./noderr/specs/UI_CheckoutFlow.md
end
subgraph "Checkout Processing"
UI_CheckoutFlow --> API_CreateOrder{{POST /api/orders}}:::./noderr/specs/API_CreateOrder.md
API_CreateOrder --> SVC_OrderProcessor[[Order Processor]]:::./noderr/specs/SVC_OrderProcessor.md
SVC_OrderProcessor --> SVC_InventoryCheck[[Inventory Service]]:::./noderr/specs/SVC_InventoryCheck.md
SVC_InventoryCheck --> DB_Inventory[(Inventory DB)]:::./noderr/specs/DB_Inventory.md
DB_Inventory --> StockCheck{Items In Stock?}:::./noderr/specs/StockCheck.md
StockCheck -->|No| UI_StockError[/Out of Stock Error/]:::./noderr/specs/UI_StockError.md
StockCheck -->|Yes| SVC_PaymentGateway[[Payment Service]]:::./noderr/specs/SVC_PaymentGateway.md
SVC_PaymentGateway --> EXT_Stripe{{Stripe API}}:::./noderr/specs/EXT_Stripe.md
EXT_Stripe --> PaymentResult{Payment Success?}:::./noderr/specs/PaymentResult.md
PaymentResult -->|No| UI_PaymentError[/Payment Failed/]:::./noderr/specs/UI_PaymentError.md
PaymentResult -->|Yes| DB_Orders[(Orders Database)]:::./noderr/specs/DB_Orders.md
DB_Orders --> SVC_EmailService[[Email Service]]:::./noderr/specs/SVC_EmailService.md
SVC_EmailService --> EXT_SendGrid{{SendGrid API}}:::./noderr/specs/EXT_SendGrid.md
DB_Orders --> UI_OrderSuccess[/Order Confirmation/]:::./noderr/specs/UI_OrderSuccess.md
end
%% --- Error Handling Flow ---
subgraph "Error Management"
API_Login -->|Error| UI_ErrorToast[/Error Toast Notification/]:::./noderr/specs/UI_ErrorToast.md
API_CreateOrder -->|Error| UI_ErrorToast
EXT_Stripe -->|Error| UI_ErrorToast
EXT_SendGrid -->|Error| SVC_ErrorLogger[[Error Logger]]:::./noderr/specs/SVC_ErrorLogger.md
SVC_ErrorLogger --> DB_ErrorLogs[(Error Logs)]:::./noderr/specs/DB_ErrorLogs.md
end
%% --- Search Feature ---
subgraph "Product Search"
UI_Dashboard --> UI_SearchBar[/Search Bar/]:::./noderr/specs/UI_SearchBar.md
UI_SearchBar -->|Type| SVC_SearchDebounce[[Debounce Service]]:::./noderr/specs/SVC_SearchDebounce.md
SVC_SearchDebounce -->|300ms| API_Search{{GET /api/search}}:::./noderr/specs/API_Search.md
API_Search --> SVC_SearchEngine[[Search Engine]]:::./noderr/specs/SVC_SearchEngine.md
SVC_SearchEngine --> DB_Products[(Products DB)]:::./noderr/specs/DB_Products.md
DB_Products --> UI_SearchResults[/Search Results Dropdown/]:::./noderr/specs/UI_SearchResults.md
UI_SearchResults -->|Select| UI_ProductModal
end
%% --- Visual Highlighting for Change Impact ---
style SVC_PaymentGateway fill:#ff9999,stroke:#ff0000,stroke-width:3px
style API_CreateOrder fill:#ffcccc
style UI_CheckoutFlow fill:#ffcccc
style EXT_Stripe fill:#ffcccc
%% --- Classification ---
classDef critical fill:#ff6b6b,color:#fff
classDef complex fill:#4ecdc4,color:#fff
classDef standard fill:#45b7d1,color:#fff
class AUTH_Check,SVC_PaymentGateway,DB_Orders critical
class STATE_CartManager,SVC_OrderProcessor,SVC_SearchEngine complex
class UI_ProductCard,UI_SearchBar,API_Search standard
The AI uses this visual memory to understand that changing API_AuthCheck will affect both the login form above it and the validator below it.
Each NodeID has its own detailed blueprint in the noderr/specs/ folder. These contain:
- Purpose and responsibilities
- Dependencies and interfaces
- Core logic and behavior
- Verification criteria
- Technical debt notes
When you say "Fix the login timeout issue", here's what happens:
- AI looks at the visual architecture
- Finds
API_AuthCheckand sees all connections - Reads only the relevant specs
- Has perfect understanding in seconds
No more loading entire codebases or missing critical connections.
See everything at a glance:
| Status | WorkGroupID | NodeID | Dependencies | Progress |
|---|---|---|---|---|
| π’ | - | UI_LoginForm | - | VERIFIED |
| π‘ | feat-20250107-143022 | API_AuthCheck | UI_LoginForm | WIP |
| βͺοΈ | - | API_PasswordReset | API_AuthCheck | TODO |
Track what's done, what's in progress, what's blocked, and what's next.
Every significant action is permanently recorded:
- What was built and when
- Why decisions were made
- What problems were discovered
- What technical debt was created
The AI can answer "Why does this code look weird?" with "According to the log, we had to work around a third-party API limitation on Jan 15."
Every building block gets a unique name (like API_AuthCheck or UI_LoginForm) that persists across all AI sessions forever. No more "what login are you talking about?"
AI identifies ALL NodeIDs affected by a feature and updates them together. No more partial implementations that break other features.
NodeIDs live in a Mermaid diagram showing how everything connects. AI sees your system as an architect would - not as random files.
Each NodeID has a detailed blueprint (spec) that evolves from plan β built β verified. AI always knows what each NodeID should do.
The tracker dashboard shows exactly what's done, what's in progress, and what's blocked - with WorkGroupIDs that track related changes together.
| Traditional AI Coding | Noderr |
|---|---|
| "Add login feature" β AI writes some login code somewhere | "Add login feature" β AI identifies all affected NodeIDs, shows system impact, builds everything together |
| "Update the auth system" β "What auth system? I don't see one" | "Update API_AuthCheck" β AI knows exactly what you mean, sees all connections |
| Files and functions with no permanent identity | Every building block has a NodeID that persists forever |
| AI reads entire codebase each time (or misses connections) | AI uses visual architecture to instantly find relevant specs |
| Changes break other features β discover during testing | AI sees ripple effects before coding β builds complete Change Sets |
| "I'll add error handling" β Inconsistent patterns | ARC Verification ensures every NodeID meets quality gates before completion |
| Context lost between sessions β repetitive explanations | Perfect memory via log β "Per the Jan 15 entry, we worked around API limitation" |
| Technical debt accumulates invisibly | Every debt logged β REFACTOR_NodeID tasks auto-scheduled |
| Documentation drifts from reality | Specs updated to "as-built" state after every change |
| Each feature built in isolation | Visual architecture ensures system cohesion |
Every feature follows this systematic, verification-driven process:
Step 1A: Impact Analysis
β Use prompt: noderr/prompts/NDv1.9__[LOOP_1A]__Propose_Change_Set.md
You: "Add password reset"
AI: "This requires changing:
- NEW: UI_ResetForm, API_ResetPassword
- MODIFY: UI_LoginPage (add 'forgot password' link)
- MODIFY: DB_Users (add reset_token field)"
Step 1B: Draft Specs
β Use prompt: noderr/prompts/NDv1.9__[LOOP_1B]__Draft_Specs.md
- AI marks NodeIDs as Work-In-Progress (WIP).
- Creates detailed blueprints for every affected NodeID.
- You review the specifications.
- Note: For large changes (β₯10 NodeIDs), a Spec Verification Checkpoint is run here to ensure quality before implementation.
Step 2A: Implement Change Set
β Use prompt: noderr/prompts/NDv1.9__[LOOP_2A]__Implement_Change_Set.md
- AI builds ALL NodeIDs in the Change Set together.
- Runs tests and initial verification.
Step 2B: Verify Implementation Completeness
β Use prompt: noderr/prompts/NDv1.9__[LOOP_2B]__Verify_Implementation.md
- A READ-ONLY audit verifies the implementation against the specs.
- Reports a true completion percentage (e.g., "85% of requirements met").
- This prevents "done" claims when work is incomplete.
Step 3: Finalize & Commit
β Use prompt: noderr/prompts/NDv1.9__[LOOP_3]__Finalize_And_Commit.md
- Updates all specs to match what was actually built.
- Logs decisions and discoveries.
- Creates a clean git commit.
Unlike traditional tools, Noderr is installed AFTER you build your initial prototype. This ensures it documents what actually exists, not just what was planned.
- Prepare your vision (blueprint, project overview, architecture)
- Build initial prototype with AI based on those plans
- Download & add Noderr - Get noderr-starter.zip
- Run Install prompt -
noderr/prompts/ND__Install_And_Reconcile.md - Run System Audit -
noderr/prompts/ND__Post_Installation_Audit.md
See Getting Started for detailed instructions.
your-project/
βββ noderr/ # Everything inside!
βββ noderr_project.md
βββ noderr_architecture.md
βββ noderr_tracker.md
βββ noderr_log.md
βββ noderr_loop.md
βββ environment_context.md
βββ specs/
βββ planning/
βββ prompts/
Without Noderr:
// Monday: "Add user profile"
function UserProfile() { ... }
// Wednesday: "Add user settings"
function Settings() { ... } // New component, doesn't connect
// Friday: "Make profile show settings"
// AI: "I don't see how these relate..."With Noderr:
// Monday: "Add user profile"
// You: Use prompt "NDv1.9__[LOOP_1A]__Propose_Change_Set.md"
// AI: "Creating UI_UserProfile (NodeID), updating UI_Navigation to include
// profile link, adding API_GetProfile endpoint. All connected in architecture."
// Wednesday: "Add user settings"
// AI: "I see UI_UserProfile exists. Creating UI_UserSettings as child component,
// adding to architecture, creating API_UpdateSettings, updating tracker."
// Friday: "Make profile show settings"
// AI: "I see both in the architecture. They're already connected.
// Just need to update UI_UserProfile render method. One-line change."The AI cannot function without noderr/environment_context.md being configured. This file teaches the AI:
- What commands to use on YOUR system (npm vs yarn, python vs python3)
- How to run tests in YOUR setup
- Where YOUR database lives
- How to commit code in YOUR environment
You don't just chat with the AI. You use specific prompt files to trigger each phase:
noderr/prompts/NDv1.9__Start_Work_Session.md β Begin work
noderr/prompts/NDv1.9__[LOOP_1A]__Propose_Change_Set.md β Start a feature
noderr/prompts/NDv1.9__[LOOP_1B]__Draft_Specs.md β Review specs
noderr/prompts/NDv1.9__[LOOP_2A]__Implement_Change_Set.md β Build it
noderr/prompts/NDv1.9__[LOOP_2B]__Verify_Implementation.md β Audit it
noderr/prompts/NDv1.9__[LOOP_3]__Finalize_And_Commit.md β Finish up
Attentive Review & Compliance - Before marking any NodeID as complete, the AI verifies:
- All tests pass
- Code meets security standards
- Performance is acceptable
- Error handling is robust
- Documentation matches reality
Noderr doesn't just trust the AI to get it right. It enforces two key quality gates:
- Specification Verification (Pre-Implementation): For large changes (10+ NodeIDs), an automated check ensures all specifications are complete and logical before a single line of code is written. This prevents building on a flawed foundation.
- Implementation Audit (Post-Implementation): After the AI reports "done", a mandatory, read-only audit (Loop 2B) compares the code against the specs. It provides a true completion percentage, catching gaps and preventing incomplete features from being marked as finished.
MIT License - Use freely in your projects
Noderr transforms AI from an eager intern who writes random code into a disciplined engineer who understands your system, follows your standards, and builds with purpose.
Welcome to systematic AI development. Welcome to Noderr.
Because great software isn't just coded. It's engineered.