As developers, we spend countless hours interacting with AI assistants like
ChatGPT, Claude, and GitHub Copilot. Yet, we're still using interfaces designed
primarily for mobile messaging apps. This disconnect between developer workflows
and UI design has been bothering me, and I've been working on a solution that
I'd love to share at FOSSUNITED'24.
Current AI chat interfaces predominantly follow web-based, mobile-first design
patterns that present several technical limitations:
1. Context switching between editor and browser
2. Limited keyboard accessibility
3. Poor integration with development workflows
4. Inefficient code handling and syntax highlighting
5. Lack of session persistence and version control
When I started thinking about this problem, I looked at how developers naturally
interact with their tools. The REPL (Read-Eval-Print Loop) interface, Jupyter
notebooks, and even the Unix philosophy all had something to teach us about
effective developer interactions.
What if we could bring the best of these worlds together? What if we could:
- Keep our hands on the keyboard
- Stay within our editor
- Maintain conversation context
- Save and version our conversations
- Use familiar editor commands and shortcuts
I'll showcase a NeoVim plugin that I've been working on to reimagine AI chat
interfaces so, it's not just another chat window
Key features:
- Keyboard-centric navigation
- Buffer-based conversation management
- Markdown support for better readability
- Integration with editor snippets
- Conversation versioning and export
In my 30 minute session at FOSSUNITED'24, I'll:
- Trace the evolution of chat interfaces
- Demonstrate the limitations of current solutions
- Show how we can learn from existing developer tools
- Present a live demo of new-chat.nvim
- Share the roadmap and invite community participation