chore: V2 planning docs + template discovery

This commit is contained in:
swanadiva
2026-07-07 11:53:16 +07:00
parent 4a8b4a2bc4
commit 8ebdebedc8
31 changed files with 9304 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
# HostKeeper | Developer & AI System Brief
> **MANDATORY INSTRUCTION FOR DOWNSTREAM AI AGENTS:**
> Before proposing or implementing any changes, code edits, or new features in this workspace, you **MUST** read this instruction set fully. Every visual and architectural decision must align strictly with the rules defined below.
---
## 1. Visual Identity & Design System (Lumina System)
Unlike standard, heavy, dark-themed hacker dashboards, HostKeeper uses the **Lumina System**—a premium, "bright-tech" glassmorphic developer workspace featuring clean off-whites, slate cards, vibrant accent highlights, and a high-clarity layout.
### A. Color Palette
Maintain the exact CSS variables and color definitions declared in `/src/index.css`:
* **Primary (Lumina Blue):** `#0050cb` (Focus boundaries, active selections, primary indicators)
* **Secondary (Neon Green):** `#006e2f` (Active/Online indicators, progress bars, successful transactions)
* **Tertiary (Tech Purple):** `#7e23cc` (File directories, custom command responses, highlight badges)
* **Surface Base Background:** `#f7f9fb`
* **Containers & Cards Lowest:** `#ffffff` (High-contrast pure white cards for depth separation)
* **Text/On-Surface Dark Slate:** `#191c1e` (Main UI text)
* **Subtle Labels/On-Surface Variant:** `#424656`
### B. Grid, Depth & Glassmorphic Accents
* **Dot Grid Texture:** The background uses a responsive 16px repeating radial dot pattern:
`radial-gradient(#e2e8f0 1.5px, transparent 1.5px)` with a size of `16px 16px`.
* **Frosted Glass Sidebars & Overlays:** Use `backdrop-blur-md` and semi-transparent white backgrounds (`rgba(255, 255, 255, 0.7)`) to show subtle grid depth underneath overlays.
* **Elevation & Shadows:** Focus containers should never have heavy dark borders. Instead, apply thin borders (`border-outline-variant/30`) paired with subtle, color-matched glow shadows (`shadow-primary/10`).
### C. Typography Pairing
* **Interface UI Font:** **Inter** (weights `300` to `900`). Used for titles, descriptive labels, tables, navigation buttons, and settings forms.
* **Technical / Data Font:** **JetBrains Mono** (weights `300` to `700`). Used exclusively for file paths, IP addresses, terminal prompt commands, and cataloged snippet blocks.
---
## 2. File & Component Architecture
Keep the project highly modular. Do not merge separate view components into a single file to avoid hitting token limit cutoffs.
* `/src/types.ts`: Holds shared global interfaces (e.g., `Host`, `FileItem`, `Snippet`, `KeychainItem`, `Device`, `BackgroundTransfer`).
* `/src/App.tsx`: The primary state router. Houses active navigation, sidebar frames, quick-action overlays, and global mock state stores.
* `/src/components/DashboardView.tsx`: Hosts list, connection triggers, and background file-transfer progress bars.
* `/src/components/SftpView.tsx`: Dual-pane local-to-remote secure file transmission and folder generation lists.
* `/src/components/TerminalView.tsx`: Interactive multi-tab mock SSH shell supporting customized terminal parser actions.
* `/src/components/SnippetsView.tsx`: DevOps script store with full search index, copy utility, and custom snippet registration.
* `/src/components/KeychainView.tsx`: Secure local keystore sandbox with passphrase disclosure controls, strength validators, and SHA256 fingerprints.
* `/src/components/SettingsView.tsx`: Profile configuration forms, feature toggle switches, and local storage state resets.
* `/src/components/BriefOverlay.tsx`: In-app system documentation and layout specifications viewer.
---
## 3. Core Functional & Interaction Guidelines
When expanding HostKeeper features, future agents must adhere to the following implementation behaviors:
1. **Icon Guidelines:**
* All icons **MUST** be imported strictly from `lucide-react`.
* Do **NOT** write custom inline SVGs.
2. **Terminal Simulation Parser:**
* Inside `TerminalView.tsx`, the interactive shell handles input commands.
* Always extend the mock commands list (`help`, `ls`, `docker ps`, `uname -a`, `ping 8.8.8.8`, `cat server.js`, `keychain`, `clear`) rather than falling back to blank prompts.
3. **Real-time SFTP Actions:**
* SFTP View simulates file transmission. Clicking a file or the upload/download button triggers path transfers with real-time UI feedback. Keep the interactive toast banners operational.
4. **No Unsolicited SDKs or Servers:**
* Keep the app fully client-side and snappy unless requested otherwise.
* Avoid creating unnecessary external backends or adding database service modules unless explicitly specified.
---
## 4. Development Verification Steps
Before finishing any task, run these commands sequentially to guarantee app integrity:
1. **Check Linter Rules:**
`npm run lint` or call the `lint_applet` tool to identify imports or compilation issues early.
2. **Verify Production Build Compilation:**
`npm run build` or call the `compile_applet` tool to ensure TypeScript checks and asset optimization pass without errors.