open-index/open-npm huggingface dataset:
npm package: @getpapillon/papicons
Description: A butterfly icon set for React and React Native
Author: PapillonApp
Latest version: 0.2.1

<p align="center">
  <img src=".github/assets/logotype.svg" alt="Papicons" width="400">
</p>
<p align="center">
Papicons is a collection of icons designed by Tom Things for Papillon.
</p>
<br/>

## Installation

```bash
npm install @getpapillon/papicons
```

or

```bash
yarn add @getpapillon/papicons
```

## Usage

### React Native

```tsx
import React from 'react';
import { View } from 'react-native';
import { Butterfly } from '@getpapillon/papicons';

const App = () => {
  return (
    <View>
      <Butterfly size={50} color="#0042DC" />
    </View>
  );
};

export default App;
```

### React (Web)

```tsx
import React from 'react';
import { Butterfly } from '@getpapillon/papicons';

const App = () => {
  return <Butterfly size={50} color="#0042DC" />;
};

export default App;
```

## Contributing

You can add your own icons to the Papicons collection by following these steps:

1. **Create a new SVG icon :** You can join the [Figma community](https://www.figma.com/community/file/1543947677978703963) to create your own icons with the grids and rules provided.
2. **Export the SVG icon :** Once you have created your icon, export it as an SVG file.
3. **Clean the SVG file :** Remove fill on paths and groups, remove unnecessary attributes, and ensure the SVG is optimized for both React Native and React.
4. **Add the icon to the package :** Place the cleaned SVG file in the `icons` directory.
5. **Run the build script :**
```bash
npm run build
```
6. **Your icons will be automatically added to the package.**

## License

This repository, including the icons and the website, is licensed under the [MIT License](./LICENSE).
npm package: @getpaseo/server
Description: Paseo backend server
Latest version: 0.1.52

# Voice Assistant

A voice-controlled terminal assistant that runs as a single local service.

## Quick Start

```bash
# Install dependencies
npm install

# Copy environment variables
cp .env.example .env
# Edit .env and add your API keys (OpenAI, Deepgram)

# Run development servers
npm run dev

# Open browser to http://localhost:5173
```

## Architecture

- **Express Server** (port 3000) - Serves API and built UI in production
- **Vite Dev Server** (port 5173) - Hot-reload React UI in development
- **WebSocket** (`/ws`) - Real-time bidirectional communication
- **Agent** - STT → LLM → TTS pipeline with terminal control
- **Daemon** - tmux-based terminal management (in-process)

## Development

```bash
# Run both servers (recommended)
npm run dev

# Or run separately:
npm run dev:server  # Express on port 3000
npm run dev:ui      # Vite on port 5173

# Type checking
npm run typecheck

# Build for production
npm run build

# Start production server
npm start
```

## Project Status

**✅ Completed** (Phases 1-2):
- Package setup and configuration
- Express server with WebSocket
- React UI with Vite
- WebSocket client with ping/pong testing

**⏳ In Progress** (Phase 3):
- Terminal control (tmux integration)

**📋 Planned** (Phases 4-9):
- LLM integration (OpenAI GPT-4)
- Agent orchestrator
- Speech-to-Text (Deepgram)
- Text-to-Speech (OpenAI)
- Audio streaming
- UI polish

See [IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md) for complete details.

## Environment Variables

```bash
OPENAI_API_KEY=your-openai-key-here      # GPT-4 and TTS
DEEPGRAM_API_KEY=your-deepgram-key-here  # Streaming STT
STT_MODEL=whisper-1        # Optional: override to gpt-4o-transcribe, etc.
STT_CONFIDENCE_THRESHOLD=-3.0  # Optional: reject low-confidence clips
STT_DEBUG_AUDIO_DIR=.stt-debug # Optional: persist raw dictation audio for debugging
PASEO_HOME=~/.paseo        # Runtime state directory (agents/, etc.)
PASEO_LISTEN=127.0.0.1:6767  # Listen address (host:port or /path/to/socket)
```

`PASEO_HOME` defaults to `~/.paseo` and isolates runtime artifacts like `agents/`. `PASEO_LISTEN` controls the daemon listen address. For blue/green testing you can run a parallel server without touching production state:

```bash
PASEO_HOME=~/.paseo-blue PASEO_LISTEN=127.0.0.1:7777 npm run dev
```

## Tech Stack

- **Server**: Express, TypeScript, ws (WebSocket)
- **Client**: React 18, Vite, TypeScript
- **Terminal**: tmux (via child_process)
- **AI**: OpenAI (LLM + TTS), Deepgram (STT)

## Testing

Currently manual testing via:
1. Start servers: `npm run dev`
2. Open http://localhost:5173
3. Test WebSocket connection (green status indicator)
4. Click "Send Ping" button to test communication

More testing guidance as features are implemented.

## License

MIT