- API key for OpenAI.
- API key for Picovoice
- API key for ElevenLabs
- mpg123 installed
- node 18+
git clone https://gist.github.com/ericlewis/ccd3f0b7a17fcbe2473121a473082c8f
- edit .env with your keys
import * as SecureStore from 'expo-secure-store'; | |
import AsyncStorage from '@react-native-async-storage/async-storage'; | |
class EphemeralSecureStore { | |
static prefix = "EphemeralSecureStore"; | |
static getEphemeralKey(key) { | |
return `${this.prefix}_${key}`; | |
} | |
import SwiftUI | |
let size: CGSize = { | |
return .init(width: 126.0, height: 36.9) | |
}() | |
let origin: CGPoint = { | |
return .init(x: UIScreen.main.bounds.midX - 0.3, y: 29.4) | |
}() |
import SwiftUI | |
import WebKit | |
// MARK: Observable Object | |
public class Chat: NSObject, ObservableObject { | |
internal var webView: WKWebView | |
private var decoder: JSONDecoder = { | |
let decoder = JSONDecoder() | |
decoder.keyDecodingStrategy = .convertFromSnakeCase |
import { Configuration, OpenAIApi } from "openai"; | |
import download from "download"; | |
import ora from "ora"; | |
import soundPlayer from "play-sound" | |
import prompts from "prompts"; | |
// Get your own keys, nerd. | |
const kOpenAI = "YOUR_API_KEY"; | |
const kUberDuck = "PRIVATE_KEY:PUBLIC_KEY"; |
extension Published: Encodable where Value: Encodable { | |
public func encode(to encoder: Encoder) throws { | |
var container = encoder.singleValueContainer() | |
let value = _PublishedValueExtractor.shared.extractValue(from: self) | |
try container.encode(value) | |
} | |
} | |
fileprivate struct _PublishedValueExtractor { | |
static let shared = _PublishedValueExtractor() |
import Foundation | |
import SwiftUI | |
// MARK: Demo | |
struct Example: RawRepresentable, Codable { | |
let id: UUID | |
} | |
// This is functionally the same as above, but we have a neater type without creating a new protocol. |
import SwiftUI | |
import swiftui_betterpicker | |
struct GridPickerView: View { | |
enum Colors: CaseIterable { | |
case red | |
case blue | |
case green | |
case purple | |
case yellow |
import SwiftUI | |
import swiftui_betterpicker | |
struct ListPickerView: View { | |
enum DayOfWeek: String, CaseIterable { | |
case monday, tuesday, wednesday, thursday, friday, saturday, sunday | |
var title: String { rawValue.localizedCapitalized } | |
} | |
@State |
Install via SPM per usual. Supports iOS 13+. MIT License.