Skip to content

valinerosgordov/NexusAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

32 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿง  NexusAI

Your Second Brain. From Research to Execution.

Desktop-native AI workspace combining RAG Research, Project Management, and Content Creation

.NET 8 LTS WPF C# 12 Gemini 2.0 Clean Architecture License: MIT Status

NexusAI Hero

๐Ÿš€ Quick Start ยท ๐Ÿ“ธ Screenshots ยท ๐Ÿ“– Documentation ยท ๐Ÿค Contributing


๐Ÿ“‹ Table of Contents


โœจ Introduction

NexusAI is a next-generation desktop-native AI workspace that transforms how you research, plan, and create. Built on .NET 8 LTS with Clean Architecture, it combines three powerful capabilities into one seamless experience:

๐ŸŽฏ Three Pillars

๐Ÿ“š RAG Research          โ†’  Chat with your documents (PDF, DOCX, PPTX, EPUB)
๐Ÿ“Š Project Management    โ†’  AI-powered Kanban boards with GitHub integration  
๐ŸŽจ Content Creation      โ†’  Auto-generate presentations, wikis, and artifacts

๐ŸŒŸ What Makes NexusAI Special

๐Ÿง  Dual AI Mode

Switch between two distinct AI personalities:

  • ๐Ÿ’ผ Professional Mode: Executive assistant for business

    • Concise, action-oriented responses
    • Project management focus
    • Business terminology
  • ๐ŸŽ“ Student Mode: Socratic tutor for learning

    • Explanatory, teaching-focused
    • Study guides and concept breakdowns
    • Educational terminology

UI instantly transforms (colors, labels, tone) on toggle!

๐Ÿ”’ Hybrid AI Privacy

Cloud Power + Local Privacy

โ˜๏ธ Gemini 2.0 Flash:
  - Multimodal (text + images)
  - RAG with citations
  - 15 req/min free tier

๐Ÿ” Ollama (Local):
  - 100% private
  - No internet required
  - Models: llama3, mistral, etc.

Switch providers at runtime, no restart needed!

๐ŸŽจ Cyber-Noir Glass UI (2026 Standard)

๐ŸŒ‘ Void Background

Almost pure black (#050505) creates infinite depth. All elements float on semi-transparent Obsidian Glass.

โšก Neon Plasma Accent

Electric gradient (#6200EA โ†’ #B500FF) powers all interactive elements with liquid animations.

๐ŸชŸ Glassmorphism

Frosted surfaces, super-rounded corners (16-32px), and subtle glows create tactile depth.

Zero instant changes โ€” Every element animates in (300ms slide-up), buttons glow on hover (150ms), mode switches cross-fade (500ms).


๐Ÿš€ Key Features

๐Ÿค– AI & Document Analysis

Feature Description
๐Ÿ“š RAG 2.0 Pipeline Chat with PDF, DOCX, PPTX, EPUB, TXT, MD files using Retrieval-Augmented Generation
๐Ÿ” Source Citations Every AI response includes [filename.pdf] citations linking to exact sources
๐Ÿ–ผ๏ธ Multimodal Vision Upload images for Gemini Vision analysis (diagrams, charts, screenshots)
๐ŸŽ™๏ธ Text-to-Speech Listen to AI responses with integrated audio player (pause/resume)
๐ŸŒ Multi-Document Context Merge context from multiple files for comprehensive answers
โšก Streaming Responses Real-time token streaming with progress indicators
๐Ÿ”ง How RAG Works
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  1. DOCUMENT INGESTION                           โ”‚
โ”‚     User uploads PDF/DOCX โ†’ Parser extracts text โ”‚
โ”‚     โ†’ Store in SessionContext.SourceDocuments    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                    โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  2. CONTEXT BUILDING                             โ”‚
โ”‚     Merge top 3 relevant docs into prompt        โ”‚
โ”‚     Format: <Source>...[filename]...</Source>    โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                    โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  3. AI GENERATION                                โ”‚
โ”‚     Gemini 2.0 Flash generates response          โ”‚
โ”‚     โ†’ Extract citations via regex: \[.*?\]       โ”‚
โ”‚     โ†’ Link citations to source documents         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Tech Stack:

  • PDF: iText7 (v8.0.5)
  • Office: DocumentFormat.OpenXml (v3.2.0)
  • eBooks: VersOne.Epub (v3.3.5)
  • AI: Gemini 2.0 Flash, Ollama

โšก Actionable Output

NexusAI doesn't just chat โ€” it creates real artifacts:

๐Ÿ—‚๏ธ Code Scaffolder

Input: "Create a REST API for blog"
Output:
  - BlogController.cs
  - BlogService.cs
  - BlogRepository.cs
  - Blog.cs (entity)
  - Folder structure

Action: Download as .zip

๐ŸŽค Presentation Engine

Input: Topic + slide count
Output:
  - Title slide
  - Content slides
  - Speaker notes
  - .pptx file

Action: Download + edit in PowerPoint

๐Ÿ“š Wiki Generator

Input: Documents + topic
Output:
  - Hierarchical structure
  - Chapter breakdown
  - Tagged pages
  - Markdown files

Action: Export to Obsidian vault

Other Artifacts:

  • ๐Ÿ“– Deep Dive: Executive summary + insights (Markdown)
  • โ“ FAQ: 10-15 Q&A pairs from sources
  • ๐Ÿ“ Study Guide: Learning objectives + questions
  • ๐ŸŽ™๏ธ Podcast Script: 2-person dialogue format

๐Ÿ“Š Smart Project Management

๐ŸŽฏ AI-Powered Planning

  1. Describe your project in natural language
  2. AI generates a complete task breakdown
  3. Kanban board auto-populated with:
    • Task titles & descriptions
    • Priority levels (High/Medium/Low)
    • Role assignments (Dev/Design/Marketing)
    • Estimated hours
    • Drag-and-drop ordering

Example:

Input: "Build a mobile app for fitness tracking 
        with social features"

AI Generates:
โœ… 15 tasks across 3 roles
โœ… 120 estimated hours
โœ… Ready-to-use Kanban board

๐Ÿ”— GitHub Integration

  • Link repositories via GitHubRepoUrl field
  • Track issues with GitHubIssueNumber per task
  • Store project files in database (ProjectFile entity)
  • Generate scaffolding directly from project plan

Kanban Features:

  • โœ… OrderIndex for persistent drag-and-drop sorting
  • โœ… 3 status columns: Todo / In Progress / Done
  • โœ… Priority badges with visual indicators
  • โœ… Role-based color coding
  • โœ… Analytics dashboard (completion %, task distribution)
  • โœ… Floating glass cards with tactile hover effects

Category Filtering:

  • ๐Ÿ’ผ Work: Business projects
  • ๐ŸŽ“ Education: Academic subjects
  • ๐Ÿ  Personal: Hobby projects

Mode-aware filtering: Professional mode defaults to Work, Student mode to Education.


๐ŸŽจ Neural Glass UI Design System

๐ŸŽญ 2026 Design Language (Click to expand)

Color Palette: Cyber-Noir

/* Base */
--void-background:    #050505;  /* Almost pure black */
--obsidian-glass:     #CC141416; /* 80% opacity dark grey */

/* Accent: Neon Plasma Gradient */
--deep-indigo:        #6200EA;
--electric-violet:    #B500FF;

/* Text Hierarchy */
--text-primary:       #FFFFFF;  /* Pure white, Bold */
--text-secondary:     #B0B0C0;  /* Cool grey */
--text-tertiary:      #606070;  /* Subtle labels */

/* Effects */
--frosted-edge:       #33FFFFFF; /* Subtle inner glow */

Materials & Depth

Element CornerRadius Effect
Windows/Modals 32px Super-rounded
Cards 24px Obsidian Glass
Buttons 16px Pill shapes
Inputs 28px Floating capsules

Glassmorphism Simulation

Since native BackdropFilter blur isn't available in WPF, we simulate glass via:

  1. Semi-transparent backgrounds: #CC141416 (80% opacity)
  2. Colored drop shadows: Purple glow for elevation
  3. Frosted edge borders: #33FFFFFF 1px inner glow
  4. Layered transparency: Multiple overlapping surfaces

Animations (The 2026 Feel)

Message Entrance:
  - Slide up: TranslateY +20 โ†’ 0
  - Fade in: Opacity 0 โ†’ 1
  - Duration: 300ms
  - Easing: CubicEase.EaseOut

Mode Switching:
  - Cross-fade colors
  - Duration: 500ms
  - Easing: CubicEase.EaseInOut

Hover States:
  - Scale: 1.0 โ†’ 1.05
  - Glow: 0 โ†’ 24px blur
  - Duration: 150ms

Card Lift (Drag):
  - Opacity: 1.0 โ†’ 0.85
  - TranslateY: 0 โ†’ -8px
  - Purple shadow intensifies
  - Duration: 150ms

Zone-by-Zone Implementation

Zone 1: Window Chrome

  • Custom draggable title bar (no standard Windows chrome)
  • Obsidian Glass background blends into sidebar
  • Logo uses Neon Plasma gradient
  • Window controls (minimize/maximize/close) use ChromeButton style

Zone 2: Chat Interface

  • User bubbles: Liquid Plasma gradient (RadialGradientBrush animated)
  • AI bubbles: Obsidian Glass with white rim lighting
  • Input field: Floating glass capsule with focus glow
  • Messages slide up + fade in (300ms)

Zone 3: Kanban Board

  • Columns have no visible borders (floating headers)
  • Task cards: Obsidian Glass pills with CornerRadius="24"
  • Drag effect: Card lifts (-8px), becomes translucent, emits purple glow
  • All text uses TextPrimary/TextSecondary colors

๐ŸŒ Localization

Runtime Language Switching

  • ๐Ÿ‡ฌ๐Ÿ‡ง English (en-US)
  • ๐Ÿ‡ท๐Ÿ‡บ Russian (ru-RU)

No restart required! UI updates instantly via ResourceDictionary swapping.

70+ Translated Strings

Coverage:
  - UI labels, buttons, placeholders
  - Error messages
  - Settings panel
  - Context menus
  - Tooltips

Files:
  - Resources/Languages/en-US.xaml
  - Resources/Languages/ru-RU.xaml

Persistent Preference: Language choice saved to settings.json and restored on app launch.


๐Ÿ“ธ Screenshots

๐Ÿ’ผ Professional Mode

Professional Mode

Concise AI responses + Project Kanban + Executive Purple theme

๐ŸŽ“ Student Mode

Student Mode

Explanatory AI + Study Planner + Educational Orange/Teal theme

๐Ÿ“Š Kanban Board (Cyber-Noir Glass)

Kanban

Floating glass cards on Void background with Neon Plasma accents

๐Ÿ’ฌ Chat Interface (Liquid Plasma)

Chat

User bubbles with animated gradient + AI glass bubbles

๐Ÿ“š Knowledge Graph

Graph

Interactive document relationship visualization

๐ŸŽค Presentation Generator

Presentation

AI-generated .pptx slides with speaker notes


๐Ÿ› ๏ธ Tech Stack

Core Framework

Runtime:        .NET 8.0 LTS (Long-Term Support)
Language:       C# 12 (Primary Constructors, Collection Expressions, File-Scoped Namespaces)
UI Framework:   WPF (Windows Presentation Foundation)
Database:       SQLite + Entity Framework Core 8.0
Architecture:   Clean Architecture (4 layers: Domain โ†’ Application โ†’ Infrastructure โ†’ Presentation)
Patterns:       MVVM, CQRS, Repository, Factory, Strategy, Railway Oriented Programming

AI Providers

Provider Model Use Case Features
๐ŸŒ Google Gemini gemini-2.0-flash Cloud AI โœ… Multimodal (text + images)
โœ… Strict RAG with citations
โœ… 15 req/min free tier
โœ… Streaming responses
๐Ÿ” Ollama llama3, mistral, etc. Local LLM โœ… 100% offline
โœ… Privacy-first
โœ… No API costs
โœ… Custom models

Document Processing

PDF:        iText7 (v8.0.5)
Office:     DocumentFormat.OpenXml (v3.2.0) - DOCX, PPTX
eBooks:     VersOne.Epub (v3.3.5)
Text:       Native support for TXT, MD

UI & Design

Theme:          MaterialDesignInXamlToolkit (v5.1.0)
Icons:          Material Design Icons (2,000+ icons)
Design System:  Custom Cyber-Noir Glass (Resources/Styles/DarkNeuralGlass.xaml)
Animations:     WPF Storyboards, DoubleAnimation, ColorAnimation
MVVM:           CommunityToolkit.Mvvm (v8.4.0) - ObservableProperty, RelayCommand

Architecture Deep Dive

๐Ÿ›๏ธ Clean Architecture (Click to expand)
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  NexusAI.Presentation                        โ”‚  โ† User Interface
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚ โ€ข ViewModels (MVVM)                                    โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Views (XAML)                                         โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Converters (BoolToVisibility, ModeToColor)          โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Resources (DarkNeuralGlass.xaml, Languages)         โ”‚  โ”‚
โ”‚  โ”‚ Technology: WPF, MaterialDesign, CommunityToolkit     โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ”‚ depends on โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  NexusAI.Application                         โ”‚  โ† Business Logic
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚ โ€ข Use Cases (Commands/Queries with Handlers)           โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Interfaces (IAiService, IProjectService)            โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Services (SessionContext, KnowledgeGraphService)    โ”‚  โ”‚
โ”‚  โ”‚ โ€ข DTOs (Data Transfer Objects)                         โ”‚  โ”‚
โ”‚  โ”‚ Pattern: CQRS, Result<T> (Railway Oriented)           โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ”‚ depends on โ†“
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                     NexusAI.Domain                           โ”‚  โ† Core (Pure C#)
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚ โ€ข Entities (User, Project, ProjectTask, ChatMessage)   โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Value Objects                                         โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Enums (AppMode, AiProvider, TaskStatus)             โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Result<T> (Railway Oriented Programming)            โ”‚  โ”‚
โ”‚  โ”‚ โœ… ZERO external dependencies                          โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–ฒโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                           โ”‚ depends on โ†‘
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  NexusAI.Infrastructure                      โ”‚  โ† External Concerns
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚ โ€ข Persistence (AppDbContext, EF Core migrations)       โ”‚  โ”‚
โ”‚  โ”‚ โ€ข AI Services (GeminiAiService, OllamaService)        โ”‚  โ”‚
โ”‚  โ”‚ โ€ข Parsers (PdfParser, WordParser, EpubParser)         โ”‚  โ”‚
โ”‚  โ”‚ โ€ข External APIs (HTTP clients, Obsidian sync)         โ”‚  โ”‚
โ”‚  โ”‚ Technology: EF Core, HttpClient, iText7, OpenXml      โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Dependency Rule: All dependencies point INWARD toward Domain.

+ โœ… Presentation   โ†’ Application โ†’ Domain
+ โœ… Infrastructure โ†’ Application โ†’ Domain
+ โŒ Domain        โ†’ (NO dependencies on outer layers)

Design Patterns:

Pattern Usage Location
MVVM UI separation Presentation/ViewModels/
CQRS Commands/Queries Application/UseCases/
Repository Data access abstraction IProjectService, IAuthService
Factory Runtime provider switching IAiServiceFactory, IDocumentParserFactory
Strategy Parser selection IDocumentParser (PDF/Word/EPUB)
Railway Oriented Error handling Result<T> + extensions
Primary Constructor DI injection (C# 12) All services

๐Ÿ—๏ธ Getting Started

Prerequisites

OS:           Windows 10/11 (x64)
Runtime:      .NET 8.0 SDK
RAM:          4 GB minimum, 8 GB recommended
Storage:      500 MB for app + documents
Display:      1920x1080 or higher (for optimal glass UI)

Installation Steps

Option 1: Download Release (Recommended)

  1. Go to Releases
  2. Download NexusAI-v1.0.0-win-x64.zip
  3. Extract to a folder (e.g., C:\Apps\NexusAI)
  4. Run NexusAI.exe
  5. Enter your Gemini API key (get one at aistudio.google.com)

Option 2: Build from Source

# 1. Clone repository
git clone https://github.com/yourusername/NexusAI.git
cd NexusAI

# 2. Restore dependencies
dotnet restore

# 3. Build solution (Debug or Release)
dotnet build --configuration Release

# 4. Run application
cd src/NexusAI.Presentation
dotnet run

# Or open NexusAI.sln in Visual Studio 2022 and press F5

Configuration

Gemini API Key (Required for Cloud AI)

  1. Visit Google AI Studio
  2. Create a free API key (15 requests/minute)
  3. Paste into the API Key field in the app header

Ollama Setup (Optional for Local AI)

# 1. Download Ollama from https://ollama.ai/
# 2. Install and start the service
# 3. Pull a model (e.g., llama3)
ollama pull llama3

# 4. In NexusAI, select "Ollama" as AI provider
# 5. Choose your downloaded model from dropdown

No API key needed for Ollama โ€” 100% offline!


๐Ÿ“š User Guide

1๏ธโƒฃ Adding Documents

๐Ÿ“ File Dialog

  1. Click ADD DOCUMENTS
  2. Select files (multi-select supported)
  3. Supported: PDF, DOCX, PPTX, EPUB, TXT, MD

๐Ÿ–ฑ๏ธ Drag & Drop

  1. Drag files from File Explorer
  2. Drop onto document sidebar
  3. Watch real-time parsing

๐Ÿ“ Obsidian Vault

  1. Settings โ†’ Obsidian
  2. Enter vault path
  3. Click Sync Vault
  4. All .md files imported

Document Management:

  • โœ… Toggle checkbox to include/exclude from AI context
  • โœ… Click โœ• to remove document
  • โœ… Hover to see file size and load timestamp

2๏ธโƒฃ AI Chat Interface

Asking Questions

๐Ÿ’ผ Professional Mode Example:
You: "Analyze Q4 revenue trends from the financial report."
AI:  "Revenue increased 23% YoY to $4.2M [Q4_Report.pdf]. 
      Key drivers: Enterprise segment (+35%), Product A sales..."

๐ŸŽ“ Student Mode Example:
You: "What is photosynthesis?"
AI:  "Great question! Let's break it down step-by-step.
      Think of a plant as a tiny solar panel factory [biology_ch3.pdf].
      
      The process has two main stages:
      1. Light-dependent reactions (capturing energy)
      2. Light-independent reactions (making glucose)
      
      Let me explain each..."

Citations: All responses include [filename.pdf] links. Click to highlight source in sidebar.


3๏ธโƒฃ App Mode Switching

Toggle between modes instantly (no restart):

Feature ๐Ÿ’ผ Professional ๐ŸŽ“ Student
AI Tone Concise, business-focused Explanatory, teaching
UI Labels "Projects", "Tasks" "Subjects", "Assignments"
Accent Color Deep Purple (#6200EA) Orange/Teal
Default Category Work Education

Toggle Location: Top header (๐Ÿ’ผ โ‡„ ๐ŸŽ“ icons)


4๏ธโƒฃ Project Management

Creating a Project

1. Go to "Projects" tab
2. Click "โž• NEW PROJECT"
3. Fill in:
   - Title: "Website Redesign"
   - Description: "Modern UI overhaul with dark mode"
   - GitHub Repo: https://github.com/company/website (optional)
   - Category: Work / Education / Personal
4. Click "Generate Plan" โ†’ AI creates task breakdown

Drag-and-drop:

  • Cards automatically update OrderIndex in database
  • Smooth animations (lift effect on grab)
  • Purple glow when hovering over drop zone

5๏ธโƒฃ Content Generation

Artifacts

Type Output Use Case
๐Ÿ“– Deep Dive Markdown Executive summary + insights
๐Ÿ“„ Summary 2-4 paragraphs Quick overview
๐Ÿ“š Study Guide Structured outline Learning objectives + questions
โ“ FAQ 10-15 Q&A Common questions from sources
๐ŸŽ™๏ธ Podcast Script Dialogue 2-person conversation

Presentation Generator

1. Go to "Presentation" tab
2. Enter:
   - Topic: "AI in Healthcare"
   - Slide count: 10
3. Click "Generate Deck"
4. AI creates:
   - Title slide
   - Content slides (bullets)
   - Speaker notes
   - Conclusion
5. Download as .pptx
6. Edit in PowerPoint

6๏ธโƒฃ Settings

  • ๐ŸŒ Language: English / Russian (instant switch)
  • ๐Ÿค– AI Provider: Gemini / Ollama
  • ๐Ÿ”‘ API Key: Paste Gemini key
  • ๐Ÿ”Š Audio: Volume, voice, speed

๐Ÿ—บ๏ธ Roadmap

โœ… Completed (v1.0)
  • Gemini 2.0 Flash integration with streaming
  • Ollama local LLM support
  • RAG pipeline with source citations
  • PDF, DOCX, PPTX, EPUB parsing
  • Dual mode (Professional/Student)
  • Cyber-Noir Glass UI (2026 design)
  • Kanban board with drag-and-drop
  • AI project planning
  • PowerPoint generation
  • Wiki system
  • Knowledge graph
  • Obsidian integration
  • Code scaffolding
  • Text-to-Speech
  • Localization (English/Russian)
  • Clean Architecture implementation
  • SQLite + EF Core persistence

๐Ÿšง v1.1 - Q2 2025 (In Progress)

  • Performance

    • Lazy loading for document lists (1000+ files)
    • Virtual scrolling in chat
    • Background indexing for RAG
    • Database connection pooling optimization
  • UX Enhancements

    • Auto-scroll to latest message
    • Ctrl+F search within documents
    • Document preview modal
    • Keyboard shortcuts (Ctrl+K command palette)
    • Undo/redo for task moves
  • Data Portability

    • Export chat history to PDF/Markdown
    • Import/export projects as JSON
    • Backup/restore database
    • Bulk document import folder

๐Ÿ”ฎ v2.0 - Q3 2025 (Future)

  • AI Providers

    • OpenAI GPT-4 integration
    • Anthropic Claude support
    • Azure OpenAI Service
    • Custom API endpoint configuration
  • Advanced Features

    • Vector embeddings (ChromaDB/Qdrant)
    • Semantic search across documents
    • Multi-user collaboration (SQLite โ†’ PostgreSQL)
    • Cloud sync (optional, Azure/AWS)
    • Voice input (speech-to-text)
  • Integrations

    • Notion sync
    • Confluence integration
    • Google Drive import
    • Slack notifications

๐ŸŒŸ v3.0 - 2026 (Vision)

  • Enterprise

    • SSO/SAML authentication
    • Role-based access control (RBAC)
    • Audit logging
    • Self-hosted server option
  • AI Enhancements

    • Fine-tuned models (custom RAG)
    • Prompt template library
    • Multi-agent workflows
    • Autonomous task execution
  • Platform Expansion

    • Web version (Blazor)
    • Mobile app (MAUI)
    • Linux support (Avalonia UI)

๐Ÿค Contributing

Contributions are highly welcome! Whether it's bug fixes, new features, or documentation improvements.

Quick Start

# 1. Fork repository
gh repo fork yourusername/NexusAI

# 2. Create feature branch
git checkout -b feature/amazing-feature

# 3. Make changes (follow C# 12 style)

# 4. Commit with conventional commits
git commit -m "feat: add export to JSON"

# 5. Push and open PR
git push origin feature/amazing-feature

Contribution Guidelines

๐Ÿ“ Code Style (Click to expand)
โœ… DO:
- Use file-scoped namespaces (namespace X;)
- Use primary constructors for DI (public class Service(IRepo repo))
- Use collection expressions (List<int> x = [];)
- Use guard clauses (early returns)
- Return Result<T> from business logic
- Add XML documentation for public APIs

โŒ DON'T:
- Throw exceptions in Domain/Application layers
- Reference Infrastructure from Application layer
- Use magic strings (use constants/resources)
- Add "AI comments" that explain what code does
- Nest logic more than 3 levels deep

Example:

// โœ… GOOD: Primary constructor, guard clauses, Result<T>
public sealed class ProjectService(AppDbContext context) : IProjectService
{
    public async Task<Result<Project>> CreateAsync(string title, ...)
    {
        // Guard clause (early return)
        if (string.IsNullOrWhiteSpace(title))
            return Result<Project>.Failure("Title cannot be empty");
        
        var project = new Project { Title = title, ... };
        context.Projects.Add(project);
        await context.SaveChangesAsync();
        
        return Result<Project>.Success(project);
    }
}
๐ŸŽฏ Commit Message Format
feat:     New feature (e.g., "feat: add Notion integration")
fix:      Bug fix (e.g., "fix: resolve null ref in ProjectService")
docs:     Documentation (e.g., "docs: update README with Docker setup")
style:    Code style/formatting (no logic change)
refactor: Code restructuring (no behavior change)
perf:     Performance improvement
test:     Adding/updating tests
chore:    Build process, dependencies

Areas Needing Help

  • ๐Ÿงช Testing: Unit tests, integration tests (xUnit, FluentAssertions)
  • ๐ŸŒ Localization: German, Spanish, French translations
  • ๐ŸŽจ UI/UX: Design improvements, accessibility (WCAG)
  • ๐Ÿ“š Documentation: Tutorials, video guides, API docs
  • ๐Ÿ› Bug Fixes: See Issues

Before contributing, please read CONTRIBUTING.md for detailed guidelines.


๐Ÿ“„ License

This project is licensed under the MIT License.

MIT License

Copyright (c) 2026 NexusAI Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

TL;DR: Free to use, modify, and distribute. Just include the copyright notice.


๐Ÿ™ Acknowledgments

Built with โค๏ธ using these amazing open-source projects:

AI & ML

UI & Design

Document Processing

Data & Infrastructure


๐Ÿ“ž Support & Community

Get Help

Stay Updated

  • โญ Star this repo to receive notifications
  • ๐Ÿ‘€ Watch releases for new versions
  • ๐Ÿ”” Subscribe to Discussions for announcements

๐Ÿ“Š Project Stats

GitHub stars GitHub forks GitHub watchers

GitHub issues GitHub pull requests GitHub last commit Code size


๐ŸŒŸ Star History

Star History Chart


Built with โค๏ธ using .NET 8 LTS and Modern C# 12

NexusAI โ€” Your Intelligent Workspace Companion

v1.0.0 โ€ข Download โ€ข Documentation โ€ข Report Bug โ€ข Request Feature

โฌ†๏ธ Back to Top


Made with ๐Ÿง  by developers, for developers

ยฉ 2026 NexusAI Contributors โ€ข MIT License

About

AI-powered research assistant for your documents. Grounded answers, multi-provider support (Gemini/Ollama), artifacts generation, knowledge graph, and Obsidian integration.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors