66 Commits

Author SHA1 Message Date
b92fd3da08 feat: AI Editor — toolbar avec menus dropdown, multi-provider (DeepSeek/OpenRouter/Gemini)
Some checks failed
CI / lint (push) Failing after 7s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / security (push) Successful in 11s
2026-05-30 16:44:42 -04:00
ca84bfdf11 style: header graph 2 lignes responsives — titre flexible + recherche dédiée
All checks were successful
CI / lint (push) Successful in 14s
CI / security (push) Successful in 7s
CI / test (push) Successful in 16s
CI / build (push) Successful in 4s
2026-05-30 08:48:35 -04:00
14192f67d7 feat: navigation graphe — ← → historique + ↑ Parent
All checks were successful
CI / lint (push) Successful in 13s
CI / security (push) Successful in 9s
CI / test (push) Successful in 17s
CI / build (push) Successful in 9s
2026-05-30 08:39:29 -04:00
5783811448 style: tuile info top-left + bordure fine pâle
All checks were successful
CI / lint (push) Successful in 13s
CI / security (push) Successful in 11s
CI / test (push) Successful in 17s
CI / build (push) Successful in 2s
2026-05-30 08:17:31 -04:00
a8131a4285 feat: panneaux sticky + boutons close ✕
All checks were successful
CI / lint (push) Successful in 16s
CI / security (push) Successful in 9s
CI / test (push) Successful in 17s
CI / build (push) Successful in 16s
2026-05-30 08:00:50 -04:00
de9f4b0bb5 feat: panneaux fixes — tuile info top-right + preview pleine hauteur droite
All checks were successful
CI / lint (push) Successful in 16s
CI / security (push) Successful in 9s
CI / test (push) Successful in 17s
CI / build (push) Successful in 3s
2026-05-30 07:52:01 -04:00
a88be85623 feat: header graph flat design — 3 zones + barre statut + recherche unifiée
All checks were successful
CI / lint (push) Successful in 14s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 2s
2026-05-30 00:00:59 -04:00
2a74503bed fix: header 2 lignes + aperçu utilise /raw + corrige regex newline
All checks were successful
CI / lint (push) Successful in 12s
CI / security (push) Successful in 8s
CI / test (push) Successful in 16s
CI / build (push) Successful in 2s
2026-05-29 23:30:06 -04:00
3de990cf7d feat: header graph repensé + filtre tag + Ctrl+survol aperçu contenu
All checks were successful
CI / lint (push) Successful in 13s
CI / security (push) Successful in 8s
CI / test (push) Successful in 14s
CI / build (push) Successful in 2s
2026-05-29 22:58:22 -04:00
0416266dde feat(graph): Phase 3 — type filter, export PNG, fullscreen, focus node
Some checks failed
CI / lint (push) Has started running
CI / test (push) Has been cancelled
CI / security (push) Has been cancelled
CI / build (push) Has been cancelled
- Type filter checkboxes (dossier, .md, autre) in legend
- Export PNG button (canvas.toDataURL)
- Fullscreen button (Fullscreen API)
- Focus node function (center on specific node)
- Filter applied during _draw() to skip hidden nodes
2026-05-28 14:48:31 -04:00
a373279b08 feat(graph): Phase 1+2 — full-vault, tag filter, backlinks, tooltips, depth slider
Some checks failed
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / security (push) Has been cancelled
CI / build (push) Has been cancelled
Backend (main.py):
- GraphNode: added tags, incoming_count, outgoing_count
- GraphEdge: added 'backlink' relation
- GraphResponse: added 'scope' field
- api_graph: scope=full|directory, tag= filter, backlinks
- Full-vault tree walk with configurable depth 0-3
- Tag index from in-memory file index for fast filtering
- Incoming/outgoing link count per node

Frontend (graph.js + index.html):
- Theme-adaptive colors via CSS custom properties
- Depth slider (0-3) with live reload
- Full-vault toggle button (🌐 Tout / 📁 Dossier)
- Search input with tag filtering + visual highlighting
- Tooltip on hover (name, path, tags, link counts)
- Backlink edges rendered in red dashed
- Node size proportional to link count
- Larger modal (1000px, 85vh)
2026-05-28 14:46:22 -04:00
4836d6f1d0 refactor: split app.js (8875 lines) into 12 ES modules
Some checks failed
CI / lint (push) Successful in 10s
CI / security (push) Successful in 8s
CI / build (push) Has been cancelled
CI / test (push) Has been cancelled
frontend/js/ structure:
  state.js      (55 lines)  — Shared mutable state, constants
  utils.js      (510 lines) — EXT_ICONS, getFileIcon, escapeHtml, safeCreateIcons
  auth.js       (547 lines) — api(), AuthManager, initLoginForm, AdminPanel
  search.js     (1106 lines)— SearchHistory, QueryParser, Autocomplete, performSearch
  sidebar.js    (1091 lines)— Vault tree, sidebar filter, TagFilterService, loadTags
  viewer.js     (1554 lines)— openFile, Outline, ScrollSpy, Frontmatter, Editor
  ui.js         (2250 lines)— Theme, Toast, Sidebar, Dropdowns, Tabs, ContextMenu
  dashboard.js  (461 lines) — Dashboard widgets (Recent, Stats, Bookmarks)
  config.js     (999 lines) — Config panel, Hidden files, About, Sidebar tabs
  sync.js       (436 lines) — SSE/IndexUpdateManager, PWA registration
  graph.js      (401 lines) — GraphViewManager (force-directed canvas graph)
  legacy.js     (550 lines) — Remaining bridge functions (goHome, showWelcome, initSearch)
  app.js        (80 lines)  — Thin orchestrator: imports all modules, calls init()

index.html: switched from <script src="app.js"> to <script type="module" src="js/app.js">
Original app.js preserved for backward compatibility.
All 14 modules pass node --check syntax validation.
2026-05-28 14:04:50 -04:00
d6cf2a1a7f Remove vault filter dropdown from dashboard 2026-05-27 15:57:59 -04:00
0d3de28967 Simplify sidebar tabs, improve saved search display, and refactor
suggestions
2026-05-27 09:27:26 -04:00
e3c25b5b09 Add saved searches with CRUD API and UI sidebar
Add extension field to search results and display it
Add active filter badges and save button to search header
2026-05-27 08:39:52 -04:00
d4896a5df1 Sync YAML frontmatter with share and bookmark actions 2026-05-26 20:02:37 -04:00
20f9bad9c0 Replace replace UI with search result navigation 2026-05-26 15:25:20 -04:00
8fdcdaf412 Add search toggles, path filters, and find/replace functionality 2026-05-26 13:35:38 -04:00
872a3e56dd Refactor file opening to use TabManager and add dashboard tab system 2026-05-26 12:14:47 -04:00
0b611a8735 Add share, webhook, and conflict management features 2026-05-26 11:00:48 -04:00
e84b66a257 Add fallback clipboard copy and wrap content in layout container 2026-05-25 21:21:41 -04:00
370420aa00 ajout de fonctionnalités 2026-05-25 20:21:42 -04:00
84d3ad0e90 feat: add ext: operator for file extension filtering in advanced search
- Add ext: operator support to query parser in backend and frontend
- Update search documentation in README and help modal with ext: examples
- Parse ext: operator to extract file extension filter (strips leading dot, converts to lowercase)
- Filter search candidates by file extension in advanced_search function
- Add ext chip display in search UI alongside existing tag/vault/title/path chips
- Update API documentation and function
2026-03-31 13:41:07 -04:00
4c4b8be215 feat: redesign help modal with enhanced hero section, improved navigation styling, and card-based layout
- Increase help container max-width from 960px to 1320px for wider layout
- Add overflow-y auto and scroll-behavior smooth to help-body
- Redesign help navigation with wider sidebar (260px), softer background colors, and rounded pill-style links
- Add emoji icons to all navigation menu items for better visual hierarchy
- Transform navigation links with rounded borders, gradient backgrounds on
2026-03-31 13:15:25 -04:00
7dc7e9932b feat: hide vault filter dropdown menu item by adding hidden class to label element 2026-03-31 11:54:19 -04:00
d26a40a99d feat: initialize frontend structure with login screen, search interface, and CodeMirror integration 2026-03-27 23:13:59 -04:00
6fc1c59664 feat: initialize ObsiGate frontend with SPA structure, search history, and autocomplete functionality 2026-03-27 23:09:47 -04:00
9e1b4f4105 feat: add initial frontend SPA for vault browsing, advanced search, and markdown rendering. 2026-03-27 21:29:22 -04:00
960a06f189 feat: Initialize ObsiGate application with core frontend and backend components. 2026-03-27 14:37:23 -04:00
fff0e94470 feat: add initial implementation of the ObsiGate frontend SPA. 2026-03-27 14:11:07 -04:00
4afa0ab5f9 feat: add "Derniers fichiers ouverts" widget to main dashboard
- Replace welcome message with a professional dashboard widget displaying the last opened files.
- Implement configurable file limit via existing settings.
- Design includes responsive grid layout and various UI states (loading, empty, error).
- Introduce new JavaScript module `DashboardRecentWidget` for handling file loading and rendering.
- Ensure accessibility compliance and responsive design breakpoints.
2026-03-27 11:25:08 -04:00
2b69c49ed1 refactor: remove hidden files indexing configuration and convert to UI-only display preference, eliminating includeHidden and hiddenWhitelist from vault config and indexing logic while adding hideHiddenFiles client-side filtering 2026-03-26 19:53:40 -04:00
2686cc5d11 feat: add dynamic button state updates for hidden files config with modified vault count display and visual highlights to indicate unsaved changes 2026-03-26 15:17:55 -04:00
08e4d732f5 feat: merge UI vault settings with environment config, improve French UI text clarity, and enhance hidden files whitelist styling with hover effects and empty state 2026-03-26 09:24:56 -04:00
9e42fb072b feat: add hidden files configuration with per-vault settings for includeHidden and hiddenWhitelist, supporting environment variables and UI controls for selective indexing of dot-prefixed files and folders 2026-03-25 09:54:34 -04:00
f22a2abae8 feat: add Progressive Web App (PWA) support with service worker registration, manifest, update notifications, and install prompts 2026-03-24 23:55:15 -04:00
7ccad9c589 feat: add find-in-page functionality with keyboard shortcuts, regex support, and match navigation 2026-03-24 21:29:05 -04:00
e06ae556ba feat: add right sidebar with table of contents, scroll spy, and reading progress tracking 2026-03-24 20:40:04 -04:00
c5e395005f feat: implement initial ObsiGate application with backend API, indexing, search, and basic frontend. 2026-03-24 12:56:00 -04:00
ee77daa6d7 feat: implement initial frontend application with comprehensive styling, theming, and core structure. 2026-03-23 21:42:45 -04:00
190f47f134 feat: Introduce a comprehensive authentication system, including user management, JWT handling, and initial frontend components with Docker support. 2026-03-23 15:44:37 -04:00
757b72c549 Add real-time file synchronization with watchdog, SSE notifications, and dynamic vault management API 2026-03-23 14:16:45 -04:00
d8e5d0ef57 Add help modal navigation with table of contents, scroll spy, vault context indicator, and new window button for file viewing 2026-03-23 13:46:17 -04:00
b40fcae62f Add advanced search engine with inverted index, thread pool execution, configuration API, and comprehensive diagnostics 2026-03-23 13:21:20 -04:00
e171a0dc35 Add advanced TF-IDF search with autocomplete, query operators, facets, pagination, and accent normalization 2026-03-23 12:09:46 -04:00
1129d1bca5 Add multi-language syntax highlighting to source editor, improve copy button to copy raw file content, and add permission error handling to file API endpoint 2026-03-22 23:52:10 -04:00
6f694148db Add desktop sidebar toggle with persistent state, search result highlighting, and improved filter icon positioning 2026-03-22 23:37:53 -04:00
0d60dd8acc Replace collapsible sidebar panels with tab-based navigation for vaults and tags with debounced filtering and dynamic placeholder text 2026-03-22 22:42:35 -04:00
d311a09527 Implement multi-stage Docker build with security hardening, add health check endpoint, optimize in-memory search with O(1) wikilink lookup, extract inline tags from markdown content, and enhance documentation with architecture diagrams and performance metrics 2026-03-22 19:03:34 -04:00
d9add8dcba Add auto-expand vault functionality to sidebar filter with improved clear button visibility and restructured input layouts for both search and filter components 2026-03-22 13:24:06 -04:00