opendbs 1.0.0
opendbs: ^1.0.0 copied to clipboard
Official Flutter/Dart client library for OpenDBS, the high-performance database with Node.js/Rust architecture.
example/main.dart
import 'package:opendbs/opendbs.dart';
void main() async {
print("๐ Starting OpenDBS Flutter/Dart Client Example...");
// 1. Initialize
final client = OpenDBS('http://localhost:4402', ignoreSSL: true);
try {
// 2. Login
print("๐ Logging in...");
final loginRes = await client.login('admin', 'admin123');
print("โ
Logged in as: ${loginRes['user']['username']}");
// 3. Create Database
print("๐ Creating database 'flutter_demo_db'...");
try {
await client.createDatabase('flutter_demo_db');
print(" Database created.");
} catch (e) {
print(" โน๏ธ Database might already exist ($e)");
}
// 4. Create Racks
print("๐ฆ Creating racks...");
try {
await client.createRack('flutter_demo_db', 'users', type: 'nosql');
print(" NoSQL Rack 'users' created.");
} catch (e) {}
try {
await client.createRack(
'flutter_demo_db',
'orders',
type: 'sql',
schema: {
'id': {'type': 'number', 'required': true},
'total': {'type': 'number'},
},
);
print(" SQL Rack 'orders' created.");
} catch (e) {}
// 5. Insert Data
print("๐ Inserting data...");
await client.insert('flutter_demo_db', 'users', {
'name': 'Dart Vader',
'email': 'dart@example.com',
});
try {
await client.sql(
'flutter_demo_db',
"INSERT INTO orders (id, total) VALUES (999, 123.45)",
);
} catch (e) {
print("โ ๏ธ SQL Insert failed: $e");
}
print("โ
Data inserted.");
// 6. Search
print("๐ Searching...");
final users = await client.find('flutter_demo_db', 'users');
print(" Found ${users.length} users.");
// 7. Fuzzy Search
print("โก Testing Fuzzy Search...");
final fuzzy = await client.fuzzySearch(
'flutter_demo_db',
'users',
'name',
'Vader',
);
print(" Fuzzy Results: $fuzzy");
// 8. Cleanup
print("\n๐งน Cleaning up resources...");
try {
await client.deleteRack('flutter_demo_db', 'users');
} catch (e) {}
try {
await client.deleteRack('flutter_demo_db', 'orders');
} catch (e) {}
try {
await client.deleteDatabase('flutter_demo_db');
} catch (e) {}
print(" Deleted temporary resources.");
} catch (e) {
if (e.toString().contains('Connection refused')) {
print("\nโ Error: Could not connect to OpenDBS at http://localhost:4402");
} else {
print("\nโ Error: $e");
}
}
}