meilisearch-api-client 0.0.1

A api client for Meilisearch.
Documentation
extern crate meilisearch_api_client;
extern crate actix_web;

use serde::{Deserialize, Serialize};
use meilisearch_api_client::{Config, client::Client, Document, DocumentRequest};

#[actix_rt::main]
async fn main() -> std::io::Result<()> {
    let uid = "demo3".to_string();

    #[derive(Deserialize, Serialize, Debug)]
    struct Movie {
        id: String,
        title: String,
    }
    impl Document for Movie {
        type IDType = String;
        fn get_id(&self) -> &String {
            &self.id
        }
    }

    let req_data = DocumentRequest { 
                        uid, 
                        documents: Some( vec![ Movie { id: "movie_id".to_string(), title: "movie_title".to_string() } ] ) 
                    };

    let config = Config::new("http://127.0.0.1".to_string(), 7700);
    let res = Client::new(config).add_or_replace(req_data).await;
    match res {
        Ok(state) => {
            println!("documents state: {:?}", state);
        },
        Err(err) => {
            println!("err: {:?}", err);
        }
    }
    Ok(())
}