Dart SDK
Install and use the MisarBlog Dart SDK
Installation
Add to pubspec.yaml:
dependencies:
misarblog_sdk: ^0.1.0
Then run dart pub get.
Embed URL
import 'package:misarblog_sdk/misarblog.dart';
// Single article
final url = embedUrl('gulshan', slug: 'my-article', theme: 'dark');
// → "https://misar.blog/gulshan/my-article/embed?theme=dark"
// Profile embed
final url = embedUrl('gulshan');
// → "https://misar.blog/gulshan/embed"
Token refresh
import 'package:misarblog_sdk/misarblog.dart';
final result = await refreshToken('your-current-token');
print(result.token);
print(result.expiresAt); // int Unix timestamp
Custom base URL:
final result = await refreshToken(
'your-current-token',
baseUrl: 'https://your-instance.example.com',
);
API reference
embedUrl(String username, {String? slug, String theme = "auto"}) → String
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| username | String | — | MisarBlog username (required) |
| slug | String? | null | Article slug — null for profile embed |
| theme | String | "auto" | "auto" | "light" | "dark" |
refreshToken(String token, {String baseUrl = "https://misar.blog"}) → Future<TokenResult>
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| token | String | — | Current token |
| baseUrl | String | "https://misar.blog" | Override base URL |
TokenResult fields: token String, expiresAt int.
Throws Exception on non-200 responses.