An experimental AI chat assistant for the NWB (Neurodata Without Borders) ecosystem. This tool is designed to help users navigate NWB documentation and find relevant information quickly through an intuitive chat interface.
Try it now: https://magland.github.io/nwb-assistant/chat
The NWB Assistant provides AI-powered assistance for:
- Understanding the NWB format
- Working with the pynwb library
- Exploring the neurodata ecosystem
- Accessing documentation for related tools
The assistant has access to documentation from:
- Node.js (version 16 or higher)
- npm or yarn
-
Clone the repository:
git clone https://github.com/magland/nwb-assistant.git cd nwb-assistant -
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser: Navigate to
http://localhost:5173/nwb-assistant/to view the application.
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production build locallynpm run lint- Run ESLint for code quality
nwb-assistant/
├── src/
│ ├── chat/ # Chat interface components
│ ├── components/ # Reusable UI components
│ ├── config/ # Configuration constants
│ ├── pages/ # Page components
│ └── assets/ # Static assets
├── public/ # Public assets
├── nextjs/ # Next.js API backend
└── docs/ # Documentation
For advanced AI models, you may need to provide your own OpenRouter API key:
- Visit OpenRouter to get an API key
- Click the gear icon in the application
- Enter your API key in the settings dialog
Basic models (like Gemini Flash) work without requiring your own API key.
We welcome contributions to improve the NWB Assistant!
Found a bug or have a feature request? Please submit an issue on GitHub.
- Fork the repository
- Create a feature branch:
git checkout -b feature-name - Make your changes
- Test thoroughly
- Submit a pull request
The documentation index is assembled and maintained at: nwb-doc-index