diff --git a/404.html b/404.html index 3920feb..99cf049 100644 --- a/404.html +++ b/404.html @@ -4,7 +4,7 @@ Development Hub - + diff --git a/assets/js/1db78e9f.8e87ef77.js b/assets/js/1db78e9f.8e87ef77.js new file mode 100644 index 0000000..68f7d86 --- /dev/null +++ b/assets/js/1db78e9f.8e87ef77.js @@ -0,0 +1 @@ +"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[393],{8363(e,s,t){t.r(s),t.d(s,{assets:()=>a,contentTitle:()=>l,default:()=>h,frontMatter:()=>c,metadata:()=>i,toc:()=>o});const i=JSON.parse('{"id":"todos","title":"Development Hub TODOs","description":"Active Tasks","source":"@site/docs/todos.md","sourceDirName":".","slug":"/todos","permalink":"/rob/development-hub/todos","draft":false,"unlisted":false,"tags":[],"version":"current","sidebarPosition":6,"frontMatter":{"type":"todos","project":"development-hub","updated":"2026-01-07T00:00:00.000Z","sidebar_position":6},"sidebar":"docs","previous":{"title":"Development Hub","permalink":"/rob/development-hub/"},"next":{"title":"Goals","permalink":"/rob/development-hub/goals"}}');var n=t(4848),d=t(8453);const c={type:"todos",project:"development-hub",updated:new Date("2026-01-07T00:00:00.000Z"),sidebar_position:6},l="Development Hub TODOs",a={},o=[{value:"Active Tasks",id:"active-tasks",level:2},{value:"High Priority",id:"high-priority",level:3},{value:"Medium Priority",id:"medium-priority",level:3},{value:"Low Priority",id:"low-priority",level:3},{value:"Completed",id:"completed",level:2},{value:"Ideas / Backlog",id:"ideas--backlog",level:2},{value:"Known Issues",id:"known-issues",level:2}];function r(e){const s={h1:"h1",h2:"h2",h3:"h3",header:"header",input:"input",li:"li",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.header,{children:(0,n.jsx)(s.h1,{id:"development-hub-todos",children:"Development Hub TODOs"})}),"\n",(0,n.jsx)(s.h2,{id:"active-tasks",children:"Active Tasks"}),"\n",(0,n.jsx)(s.h3,{id:"high-priority",children:"High Priority"}),"\n",(0,n.jsx)(s.p,{children:"(None currently)"}),"\n",(0,n.jsx)(s.h3,{id:"medium-priority",children:"Medium Priority"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add refresh button to dashboards @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Persist dashboard state in session @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add keyboard shortcuts for common actions @M1"]}),"\n"]}),"\n",(0,n.jsx)(s.h3,{id:"low-priority",children:"Low Priority"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add drag-and-drop todo reordering @M2"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add todo search/filter @M2"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Export progress reports @M2"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"completed",children:"Completed"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Create project health alerts @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add todo editing in dashboard @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add preview dialog for documentation updates @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Connect start_discussion signal for todos in milestone widgets @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Integrate orchestrated-discussions for launching discussions @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Project auto-discovery from configurable directories @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Settings UI for managing project search paths @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Ignore folders configuration (trash, project-docs, etc.) @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Case-insensitive project key matching for docs @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add interactive todo checkboxes in dashboard @M1 (2026-01-06)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Implement collapsible sections for todos/goals/milestones @M1 (2026-01-06)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add quick-add input for new todos @M1 (2026-01-06)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Create dashboard views for project status @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add hamburger menu for context-aware actions @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Implement daily standup capture @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Create progress writer service @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add action buttons to open documentation @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Auto-open welcome tab when last tab closed @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add Global Dashboard option to menu @M1"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"ideas--backlog",children:"Ideas / Backlog"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsx)(s.li,{children:"Voice command integration with Ramble @M2"}),"\n",(0,n.jsx)(s.li,{children:"Custom dashboard widgets @M2"}),"\n",(0,n.jsx)(s.li,{children:"Collaborative standups for teams @M3"}),"\n",(0,n.jsx)(s.li,{children:"Integration with external issue trackers @M3"}),"\n",(0,n.jsx)(s.li,{children:"Improve update-docs CmdForge tool accuracy"}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"known-issues",children:"Known Issues"}),"\n",(0,n.jsxs)(s.table,{children:[(0,n.jsx)(s.thead,{children:(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.th,{children:"Issue"}),(0,n.jsx)(s.th,{children:"Status"}),(0,n.jsx)(s.th,{children:"Workaround"})]})}),(0,n.jsx)(s.tbody,{children:(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"(none)"}),(0,n.jsx)(s.td,{children:"-"}),(0,n.jsx)(s.td,{children:"-"})]})})]})]})}function h(e={}){const{wrapper:s}={...(0,d.R)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(r,{...e})}):r(e)}},8453(e,s,t){t.d(s,{R:()=>c,x:()=>l});var i=t(6540);const n={},d=i.createContext(n);function c(e){const s=i.useContext(d);return i.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function l(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:c(e.components),i.createElement(d.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1db78e9f.f6feecdf.js b/assets/js/1db78e9f.f6feecdf.js deleted file mode 100644 index dbfd6f7..0000000 --- a/assets/js/1db78e9f.f6feecdf.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[393],{8363(e,s,t){t.r(s),t.d(s,{assets:()=>a,contentTitle:()=>c,default:()=>h,frontMatter:()=>l,metadata:()=>i,toc:()=>o});const i=JSON.parse('{"id":"todos","title":"Development Hub TODOs","description":"Active Tasks","source":"@site/docs/todos.md","sourceDirName":".","slug":"/todos","permalink":"/rob/development-hub/todos","draft":false,"unlisted":false,"tags":[],"version":"current","sidebarPosition":6,"frontMatter":{"type":"todos","project":"development-hub","updated":"2026-01-07T00:00:00.000Z","sidebar_position":6},"sidebar":"docs","previous":{"title":"Development Hub","permalink":"/rob/development-hub/"},"next":{"title":"Goals","permalink":"/rob/development-hub/goals"}}');var n=t(4848),d=t(8453);const l={type:"todos",project:"development-hub",updated:new Date("2026-01-07T00:00:00.000Z"),sidebar_position:6},c="Development Hub TODOs",a={},o=[{value:"Active Tasks",id:"active-tasks",level:2},{value:"High Priority",id:"high-priority",level:3},{value:"Medium Priority",id:"medium-priority",level:3},{value:"Low Priority",id:"low-priority",level:3},{value:"Completed",id:"completed",level:2},{value:"Ideas / Backlog",id:"ideas--backlog",level:2},{value:"Known Issues",id:"known-issues",level:2}];function r(e){const s={h1:"h1",h2:"h2",h3:"h3",header:"header",input:"input",li:"li",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.header,{children:(0,n.jsx)(s.h1,{id:"development-hub-todos",children:"Development Hub TODOs"})}),"\n",(0,n.jsx)(s.h2,{id:"active-tasks",children:"Active Tasks"}),"\n",(0,n.jsx)(s.h3,{id:"high-priority",children:"High Priority"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Create project health alerts @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add todo editing in dashboard @M1"]}),"\n"]}),"\n",(0,n.jsx)(s.h3,{id:"medium-priority",children:"Medium Priority"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add refresh button to dashboards @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Persist dashboard state in session @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add keyboard shortcuts for common actions @M1"]}),"\n"]}),"\n",(0,n.jsx)(s.h3,{id:"low-priority",children:"Low Priority"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add drag-and-drop todo reordering @M2"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add todo search/filter @M2"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Export progress reports @M2"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"completed",children:"Completed"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add preview dialog for documentation updates @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Connect start_discussion signal for todos in milestone widgets @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Integrate orchestrated-discussions for launching discussions @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Project auto-discovery from configurable directories @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Settings UI for managing project search paths @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Ignore folders configuration (trash, project-docs, etc.) @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Case-insensitive project key matching for docs @M1 (2026-01-07)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add interactive todo checkboxes in dashboard @M1 (2026-01-06)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Implement collapsible sections for todos/goals/milestones @M1 (2026-01-06)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add quick-add input for new todos @M1 (2026-01-06)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Create dashboard views for project status @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add hamburger menu for context-aware actions @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Implement daily standup capture @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Create progress writer service @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add action buttons to open documentation @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Auto-open welcome tab when last tab closed @M1"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add Global Dashboard option to menu @M1"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"ideas--backlog",children:"Ideas / Backlog"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsx)(s.li,{children:"Voice command integration with Ramble @M2"}),"\n",(0,n.jsx)(s.li,{children:"Custom dashboard widgets @M2"}),"\n",(0,n.jsx)(s.li,{children:"Collaborative standups for teams @M3"}),"\n",(0,n.jsx)(s.li,{children:"Integration with external issue trackers @M3"}),"\n",(0,n.jsx)(s.li,{children:"Improve update-docs CmdForge tool accuracy"}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"known-issues",children:"Known Issues"}),"\n",(0,n.jsxs)(s.table,{children:[(0,n.jsx)(s.thead,{children:(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.th,{children:"Issue"}),(0,n.jsx)(s.th,{children:"Status"}),(0,n.jsx)(s.th,{children:"Workaround"})]})}),(0,n.jsx)(s.tbody,{children:(0,n.jsxs)(s.tr,{children:[(0,n.jsx)(s.td,{children:"(none)"}),(0,n.jsx)(s.td,{children:"-"}),(0,n.jsx)(s.td,{children:"-"})]})})]})]})}function h(e={}){const{wrapper:s}={...(0,d.R)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(r,{...e})}):r(e)}},8453(e,s,t){t.d(s,{R:()=>l,x:()=>c});var i=t(6540);const n={},d=i.createContext(n);function l(e){const s=i.useContext(d);return i.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function c(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:l(e.components),i.createElement(d.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5eebbccf.8d935fe9.js b/assets/js/5eebbccf.8d935fe9.js new file mode 100644 index 0000000..931ff21 --- /dev/null +++ b/assets/js/5eebbccf.8d935fe9.js @@ -0,0 +1 @@ +"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[894],{7836(e,n,i){i.r(n),i.d(n,{assets:()=>r,contentTitle:()=>a,default:()=>h,frontMatter:()=>l,metadata:()=>t,toc:()=>c});const t=JSON.parse('{"id":"goals","title":"Goals","description":"Vision","source":"@site/docs/goals.md","sourceDirName":".","slug":"/goals","permalink":"/rob/development-hub/goals","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"type":"goals","project":"development-hub","updated":"2026-01-07T00:00:00.000Z"},"sidebar":"docs","previous":{"title":"Development Hub TODOs","permalink":"/rob/development-hub/todos"},"next":{"title":"Milestones","permalink":"/rob/development-hub/milestones"}}');var s=i(4848),o=i(8453);const l={type:"goals",project:"development-hub",updated:new Date("2026-01-07T00:00:00.000Z")},a="Goals",r={},c=[{value:"Vision",id:"vision",level:2},{value:"Strategic Goals",id:"strategic-goals",level:2},{value:"Unified Project Workspace",id:"unified-project-workspace",level:3},{value:"At-a-Glance Health Visibility",id:"at-a-glance-health-visibility",level:3},{value:"Streamlined Daily Workflow",id:"streamlined-daily-workflow",level:3},{value:"Seamless Documentation Sync",id:"seamless-documentation-sync",level:3},{value:"AI-Assisted Decision Making",id:"ai-assisted-decision-making",level:3},{value:"Non-Goals",id:"non-goals",level:2}];function d(e){const n={h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.header,{children:(0,s.jsx)(n.h1,{id:"goals",children:"Goals"})}),"\n",(0,s.jsx)(n.h2,{id:"vision",children:"Vision"}),"\n",(0,s.jsx)(n.p,{children:"Development Hub aims to be the central workspace for managing all personal projects, reducing context-switching and providing instant visibility into project health and progress."}),"\n",(0,s.jsx)(n.h2,{id:"strategic-goals",children:"Strategic Goals"}),"\n",(0,s.jsx)(n.h3,{id:"unified-project-workspace",children:"Unified Project Workspace"}),"\n",(0,s.jsx)(n.p,{children:"Provide a single interface to view, manage, and navigate between all projects without switching tools or opening multiple windows."}),"\n",(0,s.jsx)(n.h3,{id:"at-a-glance-health-visibility",children:"At-a-Glance Health Visibility"}),"\n",(0,s.jsx)(n.p,{children:"Enable developers to immediately see which projects need attention through health alerts, stale todo detection, and progress indicators."}),"\n",(0,s.jsx)(n.h3,{id:"streamlined-daily-workflow",children:"Streamlined Daily Workflow"}),"\n",(0,s.jsx)(n.p,{children:"Reduce friction in daily standups and progress tracking by capturing work done, blockers, and next steps in a structured, persistent format."}),"\n",(0,s.jsx)(n.h3,{id:"seamless-documentation-sync",children:"Seamless Documentation Sync"}),"\n",(0,s.jsx)(n.p,{children:"Keep project documentation synchronized with minimal effort through automated updates and preview-before-deploy workflows."}),"\n",(0,s.jsx)(n.h3,{id:"ai-assisted-decision-making",children:"AI-Assisted Decision Making"}),"\n",(0,s.jsx)(n.p,{children:"Leverage AI discussions to think through complex features and architectural decisions before implementation."}),"\n",(0,s.jsx)(n.h2,{id:"non-goals",children:"Non-Goals"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Mobile application"})," - Focus is on desktop development workflows"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Cloud sync service"})," - Projects are managed locally with git"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Real-time collaboration"})," - Single-user tool for now"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"External issue tracker replacement"})," - Complement, not replace, tools like GitHub Issues"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,o.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8453(e,n,i){i.d(n,{R:()=>l,x:()=>a});var t=i(6540);const s={},o=t.createContext(s);function l(e){const n=t.useContext(o);return t.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),t.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/5eebbccf.9e517a53.js b/assets/js/5eebbccf.9e517a53.js deleted file mode 100644 index 011b5d6..0000000 --- a/assets/js/5eebbccf.9e517a53.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[894],{7836(e,s,t){t.r(s),t.d(s,{assets:()=>o,contentTitle:()=>c,default:()=>u,frontMatter:()=>a,metadata:()=>i,toc:()=>d});const i=JSON.parse('{"id":"goals","title":"Goals","description":"Active","source":"@site/docs/goals.md","sourceDirName":".","slug":"/goals","permalink":"/rob/development-hub/goals","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"type":"goals","project":"development-hub","updated":"2026-01-07T00:00:00.000Z"},"sidebar":"docs","previous":{"title":"Development Hub TODOs","permalink":"/rob/development-hub/todos"},"next":{"title":"Milestones","permalink":"/rob/development-hub/milestones"}}');var n=t(4848),l=t(8453);const a={type:"goals",project:"development-hub",updated:new Date("2026-01-07T00:00:00.000Z")},c="Goals",o={},d=[{value:"Active",id:"active",level:2},{value:"Future",id:"future",level:2},{value:"Non-Goals",id:"non-goals",level:2}];function r(e){const s={h1:"h1",h2:"h2",header:"header",input:"input",li:"li",strong:"strong",ul:"ul",...(0,l.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(s.header,{children:(0,n.jsx)(s.h1,{id:"goals",children:"Goals"})}),"\n",(0,n.jsx)(s.h2,{id:"active",children:"Active"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Create dashboard views for project status #high"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add hamburger menu for context-aware actions #medium"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Implement daily standup capture #medium"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Auto-discover projects from configurable directories #high"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Configurable project search paths via Settings UI #medium"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Add preview dialog for documentation updates #high"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",checked:!0,disabled:!0})," ","Integrate orchestrated-discussions for launching discussions #medium"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add todo editing in dashboard #high"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Create project health alerts #medium"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"future",children:"Future"}),"\n",(0,n.jsxs)(s.ul,{className:"contains-task-list",children:["\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Add voice command integration (Ramble)"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Collaborative features for team standups"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Custom dashboard widgets"]}),"\n",(0,n.jsxs)(s.li,{className:"task-list-item",children:[(0,n.jsx)(s.input,{type:"checkbox",disabled:!0})," ","Integration with external issue trackers"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"non-goals",children:"Non-Goals"}),"\n",(0,n.jsxs)(s.ul,{children:["\n",(0,n.jsxs)(s.li,{children:[(0,n.jsx)(s.strong,{children:"Mobile application"})," - Focus is on desktop development workflows"]}),"\n",(0,n.jsxs)(s.li,{children:[(0,n.jsx)(s.strong,{children:"Cloud sync service"})," - Projects are managed locally with git"]}),"\n",(0,n.jsxs)(s.li,{children:[(0,n.jsx)(s.strong,{children:"Real-time collaboration"})," - Single-user tool for now"]}),"\n"]})]})}function u(e={}){const{wrapper:s}={...(0,l.R)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(r,{...e})}):r(e)}},8453(e,s,t){t.d(s,{R:()=>a,x:()=>c});var i=t(6540);const n={},l=i.createContext(n);function a(e){const s=i.useContext(l);return i.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function c(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:a(e.components),i.createElement(l.Provider,{value:s},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/674bbca5.872a5c32.js b/assets/js/674bbca5.1bf3b8ef.js similarity index 92% rename from assets/js/674bbca5.872a5c32.js rename to assets/js/674bbca5.1bf3b8ef.js index b9c5872..21c76d5 100644 --- a/assets/js/674bbca5.872a5c32.js +++ b/assets/js/674bbca5.1bf3b8ef.js @@ -1 +1 @@ -"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[143],{6387(e){e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"docs":[{"type":"link","href":"/rob/development-hub/","label":"Development Hub","docId":"overview","unlisted":false},{"type":"link","href":"/rob/development-hub/todos","label":"Development Hub TODOs","docId":"todos","unlisted":false},{"type":"link","href":"/rob/development-hub/goals","label":"Goals","docId":"goals","unlisted":false},{"type":"link","href":"/rob/development-hub/milestones","label":"Milestones","docId":"milestones","unlisted":false}]},"docs":{"goals":{"id":"goals","title":"Goals","description":"Active","sidebar":"docs"},"milestones":{"id":"milestones","title":"Milestones","description":"Active","sidebar":"docs"},"overview":{"id":"overview","title":"Development Hub","description":"Central orchestration project for managing Rob\'s multi-project development ecosystem.","sidebar":"docs"},"todos":{"id":"todos","title":"Development Hub TODOs","description":"Active Tasks","sidebar":"docs"}}}}')}}]); \ No newline at end of file +"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[143],{6387(e){e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"docs":[{"type":"link","href":"/rob/development-hub/","label":"Development Hub","docId":"overview","unlisted":false},{"type":"link","href":"/rob/development-hub/todos","label":"Development Hub TODOs","docId":"todos","unlisted":false},{"type":"link","href":"/rob/development-hub/goals","label":"Goals","docId":"goals","unlisted":false},{"type":"link","href":"/rob/development-hub/milestones","label":"Milestones","docId":"milestones","unlisted":false}]},"docs":{"goals":{"id":"goals","title":"Goals","description":"Vision","sidebar":"docs"},"milestones":{"id":"milestones","title":"Milestones","description":"Active","sidebar":"docs"},"overview":{"id":"overview","title":"Development Hub","description":"Central orchestration project for managing Rob\'s multi-project development ecosystem.","sidebar":"docs"},"todos":{"id":"todos","title":"Development Hub TODOs","description":"Active Tasks","sidebar":"docs"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/817f7194.0d7c0f50.js b/assets/js/817f7194.0d7c0f50.js deleted file mode 100644 index 43e19ec..0000000 --- a/assets/js/817f7194.0d7c0f50.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[574],{921(e,t,n){n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>h,frontMatter:()=>i,metadata:()=>r,toc:()=>d});const r=JSON.parse('{"id":"milestones","title":"Milestones","description":"Active","source":"@site/docs/milestones.md","sourceDirName":".","slug":"/milestones","permalink":"/rob/development-hub/milestones","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"type":"milestones","project":"development-hub","updated":"2026-01-07T00:00:00.000Z"},"sidebar":"docs","previous":{"title":"Goals","permalink":"/rob/development-hub/goals"}}');var o=n(4848),s=n(8453);const i={type:"milestones",project:"development-hub",updated:new Date("2026-01-07T00:00:00.000Z")},a="Milestones",l={},d=[{value:"Active",id:"active",level:2},{value:"M1: Dashboard Complete",id:"m1-dashboard-complete",level:4},{value:"M2: Enhanced Workflow",id:"m2-enhanced-workflow",level:4},{value:"Future",id:"future",level:2},{value:"M3: Team Features",id:"m3-team-features",level:4},{value:"Completed",id:"completed",level:2},{value:"M0: Core Application",id:"m0-core-application",level:4},{value:"M0.5: Project Discovery Overhaul",id:"m05-project-discovery-overhaul",level:4}];function c(e){const t={code:"code",h1:"h1",h2:"h2",h4:"h4",header:"header",hr:"hr",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.header,{children:(0,o.jsx)(t.h1,{id:"milestones",children:"Milestones"})}),"\n",(0,o.jsx)(t.h2,{id:"active",children:"Active"}),"\n",(0,o.jsx)(t.h4,{id:"m1-dashboard-complete",children:"M1: Dashboard Complete"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Target"}),": January 2026\n",(0,o.jsx)(t.strong,{children:"Status"}),": In Progress (90%)"]}),"\n",(0,o.jsx)(t.p,{children:"Complete the dashboard functionality with todo editing, project health alerts, and UI polish. Major progress: project auto-discovery, configurable search paths, dashboard views with interactive todos, documentation preview dialog, and orchestrated discussions integration all complete. Remaining: todo inline editing, health alerts."}),"\n",(0,o.jsx)(t.hr,{}),"\n",(0,o.jsx)(t.h4,{id:"m2-enhanced-workflow",children:"M2: Enhanced Workflow"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Target"}),": February 2026\n",(0,o.jsx)(t.strong,{children:"Status"}),": Not Started"]}),"\n",(0,o.jsx)(t.p,{children:"Improve user workflow with voice command integration, custom widgets, and better global dashboard features."}),"\n",(0,o.jsx)(t.hr,{}),"\n",(0,o.jsx)(t.h2,{id:"future",children:"Future"}),"\n",(0,o.jsx)(t.h4,{id:"m3-team-features",children:"M3: Team Features"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Target"}),": Q2 2026\n",(0,o.jsx)(t.strong,{children:"Status"}),": Not Started"]}),"\n",(0,o.jsx)(t.p,{children:"Add collaborative features including shared standups, external issue tracker integration, and team project health views."}),"\n",(0,o.jsx)(t.hr,{}),"\n",(0,o.jsx)(t.h2,{id:"completed",children:"Completed"}),"\n",(0,o.jsx)(t.h4,{id:"m0-core-application",children:"M0: Core Application"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Completed"}),": December 2025"]}),"\n",(0,o.jsx)(t.p,{children:"Delivered the foundational PyQt6 workspace application with splittable terminal panes, project discovery, session persistence, and new project wizard."}),"\n",(0,o.jsx)(t.h4,{id:"m05-project-discovery-overhaul",children:"M0.5: Project Discovery Overhaul"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Completed"}),": January 2026"]}),"\n",(0,o.jsxs)(t.p,{children:["Replaced hardcoded project list with auto-discovery from configurable directories. Projects detected by ",(0,o.jsx)(t.code,{children:".git"})," folder presence. Added Settings UI for managing search paths and ignore patterns."]})]})}function h(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453(e,t,n){n.d(t,{R:()=>i,x:()=>a});var r=n(6540);const o={},s=r.createContext(o);function i(e){const t=r.useContext(s);return r.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),r.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/817f7194.39f588c5.js b/assets/js/817f7194.39f588c5.js new file mode 100644 index 0000000..1a87a01 --- /dev/null +++ b/assets/js/817f7194.39f588c5.js @@ -0,0 +1 @@ +"use strict";(globalThis.webpackChunkproject_public_docs=globalThis.webpackChunkproject_public_docs||[]).push([[574],{921(e,t,r){r.r(t),r.d(t,{assets:()=>d,contentTitle:()=>a,default:()=>h,frontMatter:()=>i,metadata:()=>n,toc:()=>l});const n=JSON.parse('{"id":"milestones","title":"Milestones","description":"Active","source":"@site/docs/milestones.md","sourceDirName":".","slug":"/milestones","permalink":"/rob/development-hub/milestones","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"type":"milestones","project":"development-hub","updated":"2026-01-07T00:00:00.000Z"},"sidebar":"docs","previous":{"title":"Goals","permalink":"/rob/development-hub/goals"}}');var o=r(4848),s=r(8453);const i={type:"milestones",project:"development-hub",updated:new Date("2026-01-07T00:00:00.000Z")},a="Milestones",d={},l=[{value:"Active",id:"active",level:2},{value:"M1: Dashboard Complete",id:"m1-dashboard-complete",level:4},{value:"M2: Enhanced Workflow",id:"m2-enhanced-workflow",level:4},{value:"Future",id:"future",level:2},{value:"M3: Team Features",id:"m3-team-features",level:4},{value:"Completed",id:"completed",level:2},{value:"M0: Core Application",id:"m0-core-application",level:4},{value:"M0.5: Project Discovery Overhaul",id:"m05-project-discovery-overhaul",level:4}];function c(e){const t={code:"code",h1:"h1",h2:"h2",h4:"h4",header:"header",hr:"hr",p:"p",strong:"strong",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.header,{children:(0,o.jsx)(t.h1,{id:"milestones",children:"Milestones"})}),"\n",(0,o.jsx)(t.h2,{id:"active",children:"Active"}),"\n",(0,o.jsx)(t.h4,{id:"m1-dashboard-complete",children:"M1: Dashboard Complete"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Target"}),": January 2026\n",(0,o.jsx)(t.strong,{children:"Status"}),": In Progress (95%)"]}),"\n",(0,o.jsx)(t.p,{children:"Complete the dashboard functionality with todo editing, project health alerts, and UI polish. Major progress: project auto-discovery, configurable search paths, dashboard views with interactive todos, documentation preview dialog, orchestrated discussions integration, project health alerts, and todo editing all complete. Remaining: dashboard refresh button, session state persistence, keyboard shortcuts."}),"\n",(0,o.jsx)(t.hr,{}),"\n",(0,o.jsx)(t.h4,{id:"m2-enhanced-workflow",children:"M2: Enhanced Workflow"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Target"}),": February 2026\n",(0,o.jsx)(t.strong,{children:"Status"}),": Not Started"]}),"\n",(0,o.jsx)(t.p,{children:"Improve user workflow with voice command integration, custom widgets, and better global dashboard features."}),"\n",(0,o.jsx)(t.hr,{}),"\n",(0,o.jsx)(t.h2,{id:"future",children:"Future"}),"\n",(0,o.jsx)(t.h4,{id:"m3-team-features",children:"M3: Team Features"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Target"}),": Q2 2026\n",(0,o.jsx)(t.strong,{children:"Status"}),": Not Started"]}),"\n",(0,o.jsx)(t.p,{children:"Add collaborative features including shared standups, external issue tracker integration, and team project health views."}),"\n",(0,o.jsx)(t.hr,{}),"\n",(0,o.jsx)(t.h2,{id:"completed",children:"Completed"}),"\n",(0,o.jsx)(t.h4,{id:"m0-core-application",children:"M0: Core Application"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Completed"}),": December 2025"]}),"\n",(0,o.jsx)(t.p,{children:"Delivered the foundational PyQt6 workspace application with splittable terminal panes, project discovery, session persistence, and new project wizard."}),"\n",(0,o.jsx)(t.h4,{id:"m05-project-discovery-overhaul",children:"M0.5: Project Discovery Overhaul"}),"\n",(0,o.jsxs)(t.p,{children:[(0,o.jsx)(t.strong,{children:"Completed"}),": January 2026"]}),"\n",(0,o.jsxs)(t.p,{children:["Replaced hardcoded project list with auto-discovery from configurable directories. Projects detected by ",(0,o.jsx)(t.code,{children:".git"})," folder presence. Added Settings UI for managing search paths and ignore patterns."]})]})}function h(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453(e,t,r){r.d(t,{R:()=>i,x:()=>a});var n=r(6540);const o={},s=n.createContext(o);function i(e){const t=n.useContext(s);return n.useMemo(function(){return"function"==typeof e?e(t):{...t,...e}},[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:i(e.components),n.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/runtime~main.940eef11.js b/assets/js/runtime~main.75ac54c5.js similarity index 96% rename from assets/js/runtime~main.940eef11.js rename to assets/js/runtime~main.75ac54c5.js index 6b77294..9270e22 100644 --- a/assets/js/runtime~main.940eef11.js +++ b/assets/js/runtime~main.75ac54c5.js @@ -1 +1 @@ -(()=>{"use strict";var e,r,t,a,o,n={},i={};function c(e){var r=i[e];if(void 0!==r)return r.exports;var t=i[e]={id:e,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,c),t.loaded=!0,t.exports}c.m=n,c.c=i,e=[],c.O=(r,t,a,o)=>{if(!t){var n=1/0;for(u=0;u=o)&&Object.keys(c.O).every(e=>c.O[e](t[d]))?t.splice(d--,1):(i=!1,o0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[t,a,o]},c.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return c.d(r,{a:r}),r},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,c.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);c.r(o);var n={};r=r||[null,t({}),t([]),t(t)];for(var i=2&a&&e;("object"==typeof i||"function"==typeof i)&&!~r.indexOf(i);i=t(i))Object.getOwnPropertyNames(i).forEach(r=>n[r]=()=>e[r]);return n.default=()=>e,c.d(o,n),o},c.d=(e,r)=>{for(var t in r)c.o(r,t)&&!c.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},c.f={},c.e=e=>Promise.all(Object.keys(c.f).reduce((r,t)=>(c.f[t](e,r),r),[])),c.u=e=>"assets/js/"+({48:"a94703ab",98:"a7bd4aaa",143:"674bbca5",393:"1db78e9f",401:"17896441",413:"1db64337",574:"817f7194",647:"5e95c892",742:"aba21aa0",894:"5eebbccf"}[e]||e)+"."+{48:"b8c77466",98:"3ba34601",143:"872a5c32",237:"447ba118",393:"f6feecdf",401:"a2525508",413:"804ac24b",574:"0d7c0f50",647:"a3b66919",742:"4a552a5c",894:"9e517a53"}[e]+".js",c.miniCssF=e=>{},c.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),a={},o="project-public-docs:",c.l=(e,r,t,n)=>{if(a[e])a[e].push(r);else{var i,d;if(void 0!==t)for(var l=document.getElementsByTagName("script"),u=0;u{i.onerror=i.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(e=>e(t)),r)return r(t)},s=setTimeout(b.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=b.bind(null,i.onerror),i.onload=b.bind(null,i.onload),d&&document.head.appendChild(i)}},c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/rob/development-hub/",c.gca=function(e){return e={17896441:"401",a94703ab:"48",a7bd4aaa:"98","674bbca5":"143","1db78e9f":"393","1db64337":"413","817f7194":"574","5e95c892":"647",aba21aa0:"742","5eebbccf":"894"}[e]||e,c.p+c.u(e)},(()=>{var e={354:0,869:0};c.f.j=(r,t)=>{var a=c.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(/^(354|869)$/.test(r))e[r]=0;else{var o=new Promise((t,o)=>a=e[r]=[t,o]);t.push(a[2]=o);var n=c.p+c.u(r),i=new Error;c.l(n,t=>{if(c.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var o=t&&("load"===t.type?"missing":t.type),n=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+o+": "+n+")",i.name="ChunkLoadError",i.type=o,i.request=n,a[1](i)}},"chunk-"+r,r)}},c.O.j=r=>0===e[r];var r=(r,t)=>{var a,o,[n,i,d]=t,l=0;if(n.some(r=>0!==e[r])){for(a in i)c.o(i,a)&&(c.m[a]=i[a]);if(d)var u=d(c)}for(r&&r(t);l{"use strict";var e,r,t,a,o,n={},i={};function c(e){var r=i[e];if(void 0!==r)return r.exports;var t=i[e]={id:e,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,c),t.loaded=!0,t.exports}c.m=n,c.c=i,e=[],c.O=(r,t,a,o)=>{if(!t){var n=1/0;for(u=0;u=o)&&Object.keys(c.O).every(e=>c.O[e](t[d]))?t.splice(d--,1):(i=!1,o0&&e[u-1][2]>o;u--)e[u]=e[u-1];e[u]=[t,a,o]},c.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return c.d(r,{a:r}),r},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,c.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);c.r(o);var n={};r=r||[null,t({}),t([]),t(t)];for(var i=2&a&&e;("object"==typeof i||"function"==typeof i)&&!~r.indexOf(i);i=t(i))Object.getOwnPropertyNames(i).forEach(r=>n[r]=()=>e[r]);return n.default=()=>e,c.d(o,n),o},c.d=(e,r)=>{for(var t in r)c.o(r,t)&&!c.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},c.f={},c.e=e=>Promise.all(Object.keys(c.f).reduce((r,t)=>(c.f[t](e,r),r),[])),c.u=e=>"assets/js/"+({48:"a94703ab",98:"a7bd4aaa",143:"674bbca5",393:"1db78e9f",401:"17896441",413:"1db64337",574:"817f7194",647:"5e95c892",742:"aba21aa0",894:"5eebbccf"}[e]||e)+"."+{48:"b8c77466",98:"3ba34601",143:"1bf3b8ef",237:"447ba118",393:"8e87ef77",401:"a2525508",413:"804ac24b",574:"39f588c5",647:"a3b66919",742:"4a552a5c",894:"8d935fe9"}[e]+".js",c.miniCssF=e=>{},c.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),a={},o="project-public-docs:",c.l=(e,r,t,n)=>{if(a[e])a[e].push(r);else{var i,d;if(void 0!==t)for(var l=document.getElementsByTagName("script"),u=0;u{i.onerror=i.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(e=>e(t)),r)return r(t)},s=setTimeout(b.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=b.bind(null,i.onerror),i.onload=b.bind(null,i.onload),d&&document.head.appendChild(i)}},c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/rob/development-hub/",c.gca=function(e){return e={17896441:"401",a94703ab:"48",a7bd4aaa:"98","674bbca5":"143","1db78e9f":"393","1db64337":"413","817f7194":"574","5e95c892":"647",aba21aa0:"742","5eebbccf":"894"}[e]||e,c.p+c.u(e)},(()=>{var e={354:0,869:0};c.f.j=(r,t)=>{var a=c.o(e,r)?e[r]:void 0;if(0!==a)if(a)t.push(a[2]);else if(/^(354|869)$/.test(r))e[r]=0;else{var o=new Promise((t,o)=>a=e[r]=[t,o]);t.push(a[2]=o);var n=c.p+c.u(r),i=new Error;c.l(n,t=>{if(c.o(e,r)&&(0!==(a=e[r])&&(e[r]=void 0),a)){var o=t&&("load"===t.type?"missing":t.type),n=t&&t.target&&t.target.src;i.message="Loading chunk "+r+" failed.\n("+o+": "+n+")",i.name="ChunkLoadError",i.type=o,i.request=n,a[1](i)}},"chunk-"+r,r)}},c.O.j=r=>0===e[r];var r=(r,t)=>{var a,o,[n,i,d]=t,l=0;if(n.some(r=>0!==e[r])){for(a in i)c.o(i,a)&&(c.m[a]=i[a]);if(d)var u=d(c)}for(r&&r(t);l -Goals | Development Hub - +Goals | Development Hub + @@ -12,30 +12,25 @@

Goals

-

Active

-
    -
  • Create dashboard views for project status #high
  • -
  • Add hamburger menu for context-aware actions #medium
  • -
  • Implement daily standup capture #medium
  • -
  • Auto-discover projects from configurable directories #high
  • -
  • Configurable project search paths via Settings UI #medium
  • -
  • Add preview dialog for documentation updates #high
  • -
  • Integrate orchestrated-discussions for launching discussions #medium
  • -
  • Add todo editing in dashboard #high
  • -
  • Create project health alerts #medium
  • -
-

Future

-
    -
  • Add voice command integration (Ramble)
  • -
  • Collaborative features for team standups
  • -
  • Custom dashboard widgets
  • -
  • Integration with external issue trackers
  • -
+

Vision

+

Development Hub aims to be the central workspace for managing all personal projects, reducing context-switching and providing instant visibility into project health and progress.

+

Strategic Goals

+

Unified Project Workspace

+

Provide a single interface to view, manage, and navigate between all projects without switching tools or opening multiple windows.

+

At-a-Glance Health Visibility

+

Enable developers to immediately see which projects need attention through health alerts, stale todo detection, and progress indicators.

+

Streamlined Daily Workflow

+

Reduce friction in daily standups and progress tracking by capturing work done, blockers, and next steps in a structured, persistent format.

+

Seamless Documentation Sync

+

Keep project documentation synchronized with minimal effort through automated updates and preview-before-deploy workflows.

+

AI-Assisted Decision Making

+

Leverage AI discussions to think through complex features and architectural decisions before implementation.

Non-Goals

  • Mobile application - Focus is on desktop development workflows
  • Cloud sync service - Projects are managed locally with git
  • Real-time collaboration - Single-user tool for now
  • -
+
  • External issue tracker replacement - Complement, not replace, tools like GitHub Issues
  • + \ No newline at end of file diff --git a/index.html b/index.html index b7a0c62..bdc65e9 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ Development Hub - + diff --git a/milestones/index.html b/milestones/index.html index bc41799..30abc77 100644 --- a/milestones/index.html +++ b/milestones/index.html @@ -4,7 +4,7 @@ Milestones | Development Hub - + @@ -15,8 +15,8 @@

    Active

    M1: Dashboard Complete

    Target: January 2026 -Status: In Progress (90%)

    -

    Complete the dashboard functionality with todo editing, project health alerts, and UI polish. Major progress: project auto-discovery, configurable search paths, dashboard views with interactive todos, documentation preview dialog, and orchestrated discussions integration all complete. Remaining: todo inline editing, health alerts.

    +Status: In Progress (95%)

    +

    Complete the dashboard functionality with todo editing, project health alerts, and UI polish. Major progress: project auto-discovery, configurable search paths, dashboard views with interactive todos, documentation preview dialog, orchestrated discussions integration, project health alerts, and todo editing all complete. Remaining: dashboard refresh button, session state persistence, keyboard shortcuts.


    M2: Enhanced Workflow

    Target: February 2026 diff --git a/todos/index.html b/todos/index.html index 8457f0c..4b139c8 100644 --- a/todos/index.html +++ b/todos/index.html @@ -4,7 +4,7 @@ Development Hub TODOs | Development Hub - + @@ -14,10 +14,7 @@

    Development Hub TODOs

    Active Tasks

    High Priority

    -
      -
    • Create project health alerts @M1
    • -
    • Add todo editing in dashboard @M1
    • -
    +

    (None currently)

    Medium Priority

    • Add refresh button to dashboards @M1
    • @@ -32,6 +29,8 @@

    Completed

      +
    • Create project health alerts @M1 (2026-01-07)
    • +
    • Add todo editing in dashboard @M1 (2026-01-07)
    • Add preview dialog for documentation updates @M1 (2026-01-07)
    • Connect start_discussion signal for todos in milestone widgets @M1 (2026-01-07)
    • Integrate orchestrated-discussions for launching discussions @M1 (2026-01-07)