perplexity_flutter 2.0.4 copy "perplexity_flutter: ^2.0.4" to clipboard
perplexity_flutter: ^2.0.4 copied to clipboard

A lightweight Flutter SDK to interact with Perplexity.ai's chat completion API (streaming + model switching supported).

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:perplexity_flutter/perplexity_flutter.dart';

Future<void> main() async {
  await dotenv.load(fileName: ".env"); // Add .env to assets in pubspec.yaml
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Perplexity Example',
      home: ChatWrapperWidget(
        apiKey: dotenv.env['PERPLEXITY_API_KEY'] ?? 'your-api-key-here-temp',
        child: const ChatScreen(),
      ),
    );
  }
}

class ChatScreen extends StatefulWidget {
  const ChatScreen({super.key});

  @override
  State<ChatScreen> createState() => _ChatScreenState();
}

class _ChatScreenState extends State<ChatScreen> {
  final controller = TextEditingController();
  bool stream = true;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('Perplexity Chat')),
      body: Padding(
        padding: const EdgeInsets.all(16),
        child: Column(
          children: [
            PerplexityChatInput(),
            const SizedBox(height: 16),
            const Expanded(child: PerplexityChatView()),
          ],
        ),
      ),
    );
  }
}
2
likes
160
points
198
downloads

Publisher

unverified uploader

Weekly Downloads

A lightweight Flutter SDK to interact with Perplexity.ai's chat completion API (streaming + model switching supported).

Homepage
Repository (GitHub)
View/report issues

Topics

#perplexity #chat #ai #llm #sdk

Documentation

API reference

License

MIT (license)

Dependencies

bloc, flutter, flutter_bloc, http, perplexity_dart

More

Packages that depend on perplexity_flutter