1 unstable release
0.1.0 | Nov 25, 2024 |
---|
#1910 in Web programming
154 downloads per month
25KB
324 lines
libedbo
A robust, type-safe Rust client for the EDBO Opendata (Реєстр суб'єктів освітньої діяльності, Відкриті дані) Registry API - Ukraine's unified state education database. This client provides comprehensive access to detailed information about educational institutions across Ukraine, from primary schools to universities.
License
libedbo is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE, LICENSE-MIT for details.
lib.rs
:
libedbo
libedbo
is a Rust client library for accessing the EDBO (Реєстр суб'єктів освітньої діяльності)
Registry API, which provides information about educational institutions in Ukraine.
Features
- Search universities and retrieve detailed information
- Search secondary education institutions (schools)
- Support for both async and blocking operations
- Type-safe API with proper error handling
- Coverage for all regions of Ukraine
Quick Start
use libedbo::{SearchParams, Region, UniversityCategory};
// Create search parameters for universities in Kyiv
let params = SearchParams::new()
.with_region(Region::KyivCity)
.with_university_category(UniversityCategory::HigherEducationInstitutions);
// Search universities (blocking)
let universities = libedbo::search_universities(params)?;
// Print university names
for uni in universities {
println!("{}: {}", uni.university_id, uni.university_name);
}
Async Usage
use libedbo::{SearchParams, Region, UniversityCategory};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let params = SearchParams::new()
.with_region(Region::KyivCity)
.with_university_category(UniversityCategory::HigherEducationInstitutions);
let universities = libedbo::search_universities_async(params).await?;
Ok(())
}
Dependencies
~7–18MB
~233K SLoC