Inspiration
KanataNote was born from the frustration of context-switching between writing tools and AI assistants. Many writers, creators, and professionals struggle to maintain focus while refining ideas, brainstorming, or drafting—especially when juggling multiple apps. We envisioned a seamless workspace where AI isn’t just an add-on but a collaborative partner, helping users expand and refine their thoughts without breaking their creative flow.
The concept of Loop Writing—a continuous cycle of human-AI collaboration—became our north star. We wanted to build a tool that feels like a natural extension of the user’s mind, where ideas evolve organically through real-time interaction.
What it does
KanataNote is a rich text editor with an integrated AI assistant, designed to streamline the drafting process. Key features include:
• Side-by-Side AI Chat: On iPad, Mac, and Apple Vision Pro, users can keep their document open while chatting with AI in a sidebar—no more tab-switching. The AI can reference the document’s content for context-aware assistance (e.g., rewriting, summarizing, translating, or brainstorming).
• PromptNote: A dedicated notebook for saving and reusing prompts, complete with environment variables (e.g., {{Key}}) to create flexible, project-specific templates.
• Full-Fledged Rich Text Editor: Supports headings, lists, tables, images, code blocks, and customizable formatting (fonts, themes, line spacing). Users can export content as plain text, Markdown, or PDF.
• Organization Tools: Folders, tags, favorites, and archives help users manage projects efficiently, with a floating sidebar for quick navigation.
• Cross-Device Sync: iCloud sync ensures seamless transitions between iPhone, iPad, Mac, and Apple Vision Pro, including spatial computing support for Vision Pro.
• Privacy-First AI: The AI assistant is built to respect user privacy, with no unnecessary data collection.
KanataNote is ideal for writers, students, researchers, and creators who need a focused space to develop ideas with AI as a thought partner.
How we built it
KanataNote combines a native Apple frontend with a scalable backend to deliver a seamless AI-powered writing experience: • Text Engine: Built a custom TextKit 2 editor for high-performance rich text handling (tables, code blocks, images) and smooth iCloud sync via GRDB (SQLite). • Backend: FastAPI + LangChain on AWS powers the AI assistant, with Mistral models for low-latency responses and context-aware features (e.g., in-document rewrites). • Cross-Platform: SwiftUI (modern UI) + UIKit (text editor) for iOS/macOS, with modular components for consistency. • Development: Used LLMs to accelerate coding (boilerplate, debugging) and optimize AI prompts.
Challenges we ran into
Building KanataNote presented several technical challenges, but leveraging LLMs helped us navigate them efficiently. The custom TextKit 2 engine required careful optimization to handle rich text features like tables and code blocks, but with the help of AI-assisted coding, we streamlined the implementation process. Syncing documents across devices using GRDB and iCloud also demanded attention, particularly around conflict resolution, though we were able to iterate quickly thanks to AI-generated prototypes. On the backend, integrating FastAPI with Mistral’s models to create a responsive AI assistant was straightforward with the right prompts, allowing us to focus on refining the user experience rather than getting bogged down in boilerplate code.
Accomplishments that we're proud of
What excites us most about KanataNote is how naturally the AI assistant blends into the writing experience. The custom TextKit 2 engine delivers smooth, reliable performance, even with complex documents containing tables, code blocks, or large amounts of text. Features like PromptNote—with its reusable templates and environment variables—have resonated with users for their ability to streamline workflows without adding complexity. By leveraging LLMs throughout development, we were able to focus on refining the core experience, resulting in a tool that feels both powerful and intuitive. The side-by-side AI chat, in particular, has become a standout feature, making it effortless to brainstorm, iterate, and refine ideas in real time.
What we learned
Working with LLMs taught us how to balance speed with precision. They helped us generate and refine code quickly, but we also learned the importance of validating critical paths manually to ensure reliability. The TextKit 2 engine, for example, required some hands-on tuning, but AI-assisted development allowed us to experiment and iterate faster than traditional methods. We also discovered that syncing data across devices is never as simple as it seems, but with the right tools and a bit of creativity, we were able to build a system that feels effortless for users. Most importantly, we confirmed that performance and simplicity are what users value most—and that’s where we’ll continue to focus our efforts.
What's next for KanataNote
We're focused on making KanataNote more powerful and versatile. Here's what we're working on:
• Enhanced Editor Reliability: Continuing to refine the TextKit 2 engine for even smoother performance and stability. • AI Agent Improvements: Expanding the capabilities of our AI assistant to make it more intuitive and context-aware. • Web Publishing: Enabling one-click publishing to share documents online with customizable links. • Social Platform Integration: Seamless publishing to our existing social platform with AI-assisted content optimization.
We're excited to keep evolving KanataNote to better serve writers and creators.
Log in or sign up for Devpost to join the conversation.