Skip to content

Repository files navigation


FloatNote Logo

FloatNote

A lightweight Windows desktop note-taking app — Notebook, To-Do, Screenshot & More

version platform license tauri vue

English · 简体中文

Download · Features · Install · Changelog



Introduction

FloatNote is a lightweight Windows desktop note-taking app (~6 MB) that launches instantly. It combines notebooks, to-do lists, screen capture, and multi-format import/export in one place, with both rich-text and Markdown dual-mode editing, 8 theme options, window transparency and always-on-top — making quick note-taking as simple and natural as a sticky note.

Built with Tauri 2 + Vue 3 + Rust, it is 80%+ smaller than comparable Electron apps and uses significantly less memory.


Features

Notes

Feature Description
Multi-Notebook Create multiple notebooks with rename, color labels, and lock protection
Rich Text Editor Bold, italic, underline, strikethrough, 7 font sizes, clear formatting
Markdown Editor Live preview with GFM, images, tables, and code highlighting
Pin Notes Pin important notes to the top of the list
Color Labels Color-code notes for quick visual categorization
Auto Title Auto-extract first 20 characters as title when left blank
Word Count Real-time character, word, line count and estimated reading time
Full-Text Search Search across titles and content from the sidebar

To-Do

Feature Description
Multiple Lists Create multiple to-do lists grouped by project or context
Pending Count Show pending task count in the list header
List Management Lock, color label, and rename lists

Screenshot

Feature Description
Full-Screen Capture Standalone fullscreen window covering the entire display including taskbar
Hide & Capture Auto-hide main window before capturing to avoid capturing the app itself
Clipboard Copy Auto-copy selected region to clipboard
Hotkey Default Ctrl + Shift + A, customizable in settings

Import & Export

Feature Description
Import Markdown (.md), plain text (.txt), HTML, Word (.docx)
Export Markdown, TXT, HTML, Word, PDF
Drag & Drop Drag images to insert; drag text files to import content

UI & Personalization

Feature Description
8 Themes Light / Dark / Warm Paper / Mint / Sakura / Mist Blue / Milk Coffee / Warm Coffee
Transparency 20%–100% adjustable via native Windows layered window API
Always on Top Pin window on top with one click
Minimal Mode Hide tab bar, keep only the core editor
Frameless Window Custom title bar, double-click to toggle compact mode
System Tray Minimize to tray; right-click for quick note/to-do creation
Bilingual UI Switch UI language with one click (English / Chinese)

Data & Sync

Feature Description
Trash Deleted items kept for 30 days with restore support
Local-First All data stored locally, no cloud dependency
Supabase Sync Optional Supabase sync for cross-device data

Installation

Option 1: Download Installer (Recommended)

Download the latest release from Releases:

File Description Size
笺记_1.3.2_x64-setup.exe NSIS installer with Start Menu & desktop shortcuts ~6.5 MB
floatnote.exe Portable edition, no install needed — just double-click to run ~6 MB

Option 2: Build from Source

# 1. Clone the repo
git clone https://github.com/flyanx/FloatNote.git
cd FloatNote

# 2. Install dependencies
npm install

# 3. Dev mode (hot reload)
npm run tauri dev

# 4. Build for production
npm run tauri build

Build output: src-tauri/target/release/

Prerequisites: Node.js 18+, Rust 1.70+, WebView2 (usually pre-installed on Windows 10/11)


Shortcuts

Shortcut Function
Ctrl + N New Note
Ctrl + S Save (auto-save enabled)
Ctrl + B Bold (rich text mode)
Ctrl + I Italic (rich text mode)
Ctrl + U Underline (rich text mode)
Ctrl + Shift + V Paste as plain text
Ctrl + Shift + A Screenshot

Tech Stack

Layer Technology
Desktop Framework Tauri 2.x
Frontend Framework Vue 3 (Composition API)
Build Tool Vite 5
Backend Language Rust
i18n vue-i18n
Markdown Rendering marked
Word Export docx
Word Import mammoth
Screenshot xcap
Clipboard arboard

Project Structure

FloatNote/
├── src/                          # Frontend source (Vue 3)
│   ├── components/               # Vue components
│   │   ├── NotePanel.vue         # Notebook panel
│   │   ├── TodoPanel.vue         # To-do panel
│   │   ├── SyncPanel.vue         # Cloud sync panel
│   │   ├── ScreenshotOverlay.vue # Screenshot overlay
│   │   └── TrashPanel.vue        # Trash panel
│   ├── composables/              # Vue composables
│   │   ├── useClickOutside.js    # Click-outside detection
│   │   ├── useCollectionManager.js # Collection management
│   │   ├── useContextMenu.js     # Context menu
│   │   ├── useDragSort.js        # Drag-and-drop sorting
│   │   ├── useInlineRename.js    # Inline rename
│   │   └── useToast.js           # Toast notifications
│   ├── i18n/                     # i18n resources
│   │   ├── index.js
│   │   ├── zh.json               # Chinese locale
│   │   └── en.json               # English locale
│   ├── services/                 # Service layer
│   │   ├── syncService.js        # Cloud sync logic
│   │   └── syncState.js          # Sync state management
│   ├── utils/                    # Utilities
│   │   ├── colors.js             # Color utilities
│   │   ├── date.js               # Date utilities
│   │   ├── id.js                 # ID generation
│   │   ├── storage.js            # Local storage
│   │   └── trash.js              # Trash logic
│   ├── App.vue                   # App shell (title bar, theme, panel switching)
│   ├── ScreenshotWindow.vue      # Screenshot window (standalone fullscreen)
│   ├── main.js                   # Main app entry
│   └── style.css                 # Global styles + theme variables
├── src-tauri/                    # Rust backend
│   ├── src/main.rs               # Tauri commands
│   ├── Cargo.toml                # Rust dependencies
│   ├── tauri.conf.json           # Tauri configuration
│   └── icons/                    # App icons
├── public/                       # Static assets
├── screenshot.html               # Screenshot window HTML entry
├── package.json                  # Frontend dependencies
└── vite.config.js                # Vite configuration

Changelog

v1.3.2

  • Redesigned note right-click menu: rename input at top, pin/delete buttons inline, spring animation
  • Removed delete confirmation dialog — delete now executes immediately
  • Drag-and-drop reordering for notes (replaced move up/down buttons)
  • Refined color palette: 10 elegant colors with 2 brighter accent options
  • Binary size optimization: LTO, codegen-units=1, panic=abort, opt-level=z
  • Dependency pruning: image (PNG only), reqwest (rustls instead of native-tls)
  • Frontend: Terser compression with console removal and chunk splitting
  • UPX compression: exe reduced from 18 MB to 6 MB (65% smaller)

v1.3.1

  • Added bilingual UI (English / Chinese) with one-click language switch
  • Window transparency now uses native Windows SetLayeredWindowAttributes API
  • Added "New Note" and "New To-Do" to system tray context menu
  • Unified app icon across exe, taskbar, tray, and title bar
  • Fixed transparent frame bug caused by frontend resources not loading correctly
  • Improved startup: window shown only after initialization completes

v1.3.0

  • Screenshot rewritten as a standalone fullscreen window covering the entire display
  • Added empty-state hints, auto title generation, and word count panel
  • Added progress indicators for import/export operations
  • Added retry button when cloud sync fails
  • Added drag-and-drop support for images and text files into the editor
  • Fixed auto title generation bug with Pinyin IME
  • Size optimized: exe reduced from 23 MB to 17 MB
  • Renamed: LingQian -> FloatNote

v1.2.0

  • Multi-format import/export (Markdown / TXT / HTML / DOCX / PDF)
  • Enhanced rich-text editor
  • 8 theme options
  • Always-on-top and adjustable transparency
  • System tray support

License

MIT License


Acknowledgements

  • Tauri — Lightweight desktop app framework
  • Vue.js — The Progressive JavaScript Framework
  • Vite — Next-generation frontend build tool
  • Rust — A safe, concurrent, and practical systems language

About

A lightweight Windows desktop note-taking app with notebooks, todos, screenshots & multi-format import/export. Built with Tauri 2 + Vue 3 + Rust. 一款轻量级 Windows 桌面笔记软件,体积仅约 17MB,启动秒开。集记事本、待办事项、屏幕截图、多格式导入导出于一体,支持富文本与 Markdown 双模式编辑、8 种主题切换、窗口透明度调节与置顶,让随手记录像便签一样简单自然。

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages