<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Developer Guide on ApplauseLab</title><link>https://applauselab.ai/docs/yap/developer/</link><description>Recent content in Developer Guide on ApplauseLab</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://applauselab.ai/docs/yap/developer/index.xml" rel="self" type="application/rss+xml"/><item><title>Building from Source</title><link>https://applauselab.ai/docs/yap/developer/building/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://applauselab.ai/docs/yap/developer/building/</guid><description>&lt;h2 id="prerequisites"&gt;Prerequisites&lt;/h2&gt;
&lt;p&gt;Before building, ensure you have the following installed:&lt;/p&gt;
&lt;h3 id="required"&gt;Required&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tool&lt;/th&gt;
 &lt;th&gt;Version&lt;/th&gt;
 &lt;th&gt;Installation&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Go&lt;/td&gt;
 &lt;td&gt;1.21+&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://golang.org/dl/"&gt;golang.org&lt;/a&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Node.js&lt;/td&gt;
 &lt;td&gt;18+&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://nodejs.org/"&gt;nodejs.org&lt;/a&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Wails CLI&lt;/td&gt;
 &lt;td&gt;v2&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;go install github.com/wailsapp/wails/v2/cmd/wails@latest&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;PortAudio&lt;/td&gt;
 &lt;td&gt;Latest&lt;/td&gt;
 &lt;td&gt;See below&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="optional-for-local-transcription"&gt;Optional (for local transcription)&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Tool&lt;/th&gt;
 &lt;th&gt;Purpose&lt;/th&gt;
 &lt;th&gt;Installation&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;whisper-cpp&lt;/td&gt;
 &lt;td&gt;Local transcription&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;brew install whisper-cpp&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="installing-portaudio"&gt;Installing PortAudio&lt;/h2&gt;
&lt;h3 id="macos"&gt;macOS&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;brew install portaudio
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="ubuntudebian"&gt;Ubuntu/Debian&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo apt-get install portaudio19-dev
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="fedora"&gt;Fedora&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;sudo dnf install portaudio-devel
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="windows"&gt;Windows&lt;/h3&gt;
&lt;p&gt;PortAudio is included via CGO bindings. Ensure you have a working C compiler (MinGW or MSVC).&lt;/p&gt;</description></item><item><title>Project Structure</title><link>https://applauselab.ai/docs/yap/developer/project-structure/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://applauselab.ai/docs/yap/developer/project-structure/</guid><description>&lt;h2 id="overview"&gt;Overview&lt;/h2&gt;
&lt;p&gt;Yap is built with &lt;a href="https://wails.io/"&gt;Wails&lt;/a&gt;, combining a Go backend with a React frontend.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;yap/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── app.go # Main application logic
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── main.go # Wails entry point
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── internal/ # Go packages
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── frontend/ # React application
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;└── build/ # Build assets and output
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="entry-points"&gt;Entry Points&lt;/h2&gt;
&lt;h3 id="maingo"&gt;main.go&lt;/h3&gt;
&lt;p&gt;Wails application entry point. Configures:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Window size and properties&lt;/li&gt;
&lt;li&gt;Menu binding&lt;/li&gt;
&lt;li&gt;Asset handling&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="appgo"&gt;app.go&lt;/h3&gt;
&lt;p&gt;Core application struct with methods exposed to the frontend:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Recording state management&lt;/li&gt;
&lt;li&gt;Transcription coordination&lt;/li&gt;
&lt;li&gt;History management&lt;/li&gt;
&lt;li&gt;Configuration&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="internal-packages"&gt;Internal Packages&lt;/h2&gt;
&lt;h3 id="internalaudio"&gt;internal/audio&lt;/h3&gt;
&lt;p&gt;Audio recording using PortAudio.&lt;/p&gt;</description></item><item><title>Contributing</title><link>https://applauselab.ai/docs/yap/developer/contributing/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://applauselab.ai/docs/yap/developer/contributing/</guid><description>&lt;p&gt;We welcome contributions to Yap. This guide explains how to get involved.&lt;/p&gt;
&lt;h2 id="ways-to-contribute"&gt;Ways to Contribute&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bug Reports&lt;/strong&gt; — Found a bug? Open an issue&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Feature Requests&lt;/strong&gt; — Have an idea? Start a discussion&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Code&lt;/strong&gt; — Fix bugs or implement features&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Documentation&lt;/strong&gt; — Improve docs or add examples&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing&lt;/strong&gt; — Test on different platforms&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="getting-started"&gt;Getting Started&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;Fork the repository on GitHub&lt;/li&gt;
&lt;li&gt;Clone your fork locally&lt;/li&gt;
&lt;li&gt;Set up the development environment (see &lt;a href="https://applauselab.ai/docs/yap/developer/building/"&gt;Building&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Create a branch for your changes&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git clone https://github.com/YOUR_USERNAME/yap.git
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; yap
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;git checkout -b feature/your-feature-name
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="development-workflow"&gt;Development Workflow&lt;/h2&gt;
&lt;h3 id="1-make-changes"&gt;1. Make Changes&lt;/h3&gt;
&lt;p&gt;Edit code, add features, fix bugs.&lt;/p&gt;</description></item></channel></rss>