Skip to content

Audio note summarizer that transforms stream-of-consciousness recordings into structured insights

Notifications You must be signed in to change notification settings

happybits/funnel

Repository files navigation

Funnel 🎙️

Transform your stream-of-consciousness audio recordings into structured, actionable insights.

Funnel Empty State Funnel Recording Funnel Transcript

Overview

Funnel is a SwiftUI app that captures spontaneous audio recordings and transforms them into multiple visual representations. Perfect for capturing ideas on-the-go when inspiration strikes.

    🎤 Record → 🤖 Process → 📋 Visualize
         │            │             │
         │            │             ├── Bullet Points
         │            │             ├── Napkin Sketch
         │            │             └── Full Transcript
         │            │
         │            └── AI-powered transcription & summarization
         │
         └── One-tap recording with AirPods support

Features

🎙️ Audio Recording

  • Simple one-tap recording with real-time waveform visualization
  • Background recording capability
  • AirPods/headphone support
  • Minimum duration check to ensure quality

🤖 AI Processing

  • Automatic transcription via OpenAI Whisper
  • Smart summarization using Anthropic Claude
  • Visual diagram generation
  • Fast processing with status updates

📱 Beautiful UI

  • Gradient backgrounds with vibrant colors
  • Glassmorphic effects for modern aesthetics
  • Smooth animations and transitions
  • Dark mode optimized

🗂️ Note Management

  • Chronological list of all recordings
  • Search across transcripts and summaries
  • Export options (coming soon)
  • Archive and delete functionality

Tech Stack

iOS App

  • SwiftUI - Modern declarative UI
  • SwiftData - Local persistence
  • AVAudioRecorder - Audio capture
  • Combine - Reactive programming

Backend

  • Deno - Modern TypeScript runtime
  • OpenAI Whisper API - Audio transcription
  • Anthropic Claude API - Content analysis
  • RESTful API - Clean communication

Getting Started

Prerequisites

  • Xcode 15+
  • iOS 17+
  • Deno 1.40+
  • API Keys for OpenAI and Anthropic

Installation

  1. Clone the repository

    git clone https://github.com/happybits/funnel.git
    cd funnel
  2. Set up the iOS app

    make install  # Install swiftformat
    make build    # Build the app
  3. Configure the backend

    cd server
    cp .env.example .env
    # Add your API keys to .env
  4. Start the server

    deno task dev
  5. Run the app

    make run  # Or open in Xcode and run

Development

Available Commands

make help       # Show all available commands
make build      # Build the app
make run        # Run on simulator
make format     # Format Swift code
make test       # Run tests
make clean      # Clean build artifacts

Project Structure

funnel/
├── Funnel/                 # iOS app
│   ├── Views/             # SwiftUI views
│   ├── Models/            # Data models
│   ├── Services/          # API and recording services
│   └── Utils/             # Helpers and extensions
├── server/                # Deno backend
│   ├── routes/           # API endpoints
│   ├── services/         # External API integrations
│   └── tests/            # Server tests
└── docs/                  # Documentation

API Reference

POST /api/new-recording

Upload an audio file for processing.

Request:

  • Multipart form data with audio file
  • Supported formats: mp3, mp4, wav, m4a

Response:

{
  "transcript": "Full transcription text...",
  "duration": 45.2,
  "bulletSummary": ["Key point 1", "Key point 2"],
  "diagram": {
    "title": "Concept Overview",
    "description": "Visual representation of the main idea",
    "content": "ASCII art or mermaid diagram"
  }
}

Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Best Practices

License

MIT License - see LICENSE for details.

Acknowledgments

  • Design inspiration from modern iOS apps
  • Built with ❤️ using SwiftUI and Deno
  • Powered by OpenAI and Anthropic APIs

Turn your thoughts into action.

About

Audio note summarizer that transforms stream-of-consciousness recordings into structured insights

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •