about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--README.md7
-rw-r--r--crawler/src/main.rs2
-rw-r--r--frontend/src/main.rs12
-rw-r--r--indexer/src/main.rs17
4 files changed, 23 insertions, 15 deletions
diff --git a/README.md b/README.md
index aee4671..910e133 100644
--- a/README.md
+++ b/README.md
@@ -23,7 +23,12 @@ Install cargo through your preferred method.
 ### 2. Run!
 
 ```
-$ trunk serve frontend/index.html
 $ cargo run --bin indexer
 $ cargo run --bin crawler
+$ trunk serve frontend/index.html
+```
+
+### 3. Use?!
+```
+ Navigate to 127.0.0.1:8080 on your favorite browser:)
 ```
diff --git a/crawler/src/main.rs b/crawler/src/main.rs
index 557ba4e..3700d65 100644
--- a/crawler/src/main.rs
+++ b/crawler/src/main.rs
@@ -55,7 +55,7 @@ async fn crawler(http_client: Client, root_urls: Vec<&str>, max_queue_size: usiz
             //push content to index
             let indexer_response = match push_crawl_entry_to_indexer(
                 &http_client,
-                "http://127.0.0.1:8080/api/resource".to_string(),
+                "http://127.0.0.1:4444/api/resource".to_string(),
                 url,
                 content,
             )
diff --git a/frontend/src/main.rs b/frontend/src/main.rs
index 29bdd71..e449e4a 100644
--- a/frontend/src/main.rs
+++ b/frontend/src/main.rs
@@ -1,6 +1,7 @@
 mod app;
 
 use app::OSSE;
+use web_sys::window;
 use yew::prelude::*;
 use yew_router::prelude::*;
 
@@ -15,12 +16,19 @@ enum Route {
 }
 
 fn switch_routes(routes: Route) -> Html {
+    let location = window().unwrap().location();
+    let api_endpoint = format!(
+        "{}//{}:{}/api",
+        location.protocol().unwrap(),
+        location.hostname().unwrap(),
+        4444
+    );
     match routes {
         Route::OSSEHome | Route::OSSEHomeEmptySearch => html! {
-            <OSSE api_endpoint={"/api"} initial_search_query={None as Option<String>} />
+            <OSSE api_endpoint={api_endpoint} initial_search_query={None as Option<String>} />
         },
         Route::OSSESearch { query } => html! {
-            <OSSE api_endpoint={"/api"} initial_search_query={Some(query)} />
+            <OSSE api_endpoint={api_endpoint} initial_search_query={Some(query)} />
         },
     }
 }
diff --git a/indexer/src/main.rs b/indexer/src/main.rs
index 8d738cd..592a0a6 100644
--- a/indexer/src/main.rs
+++ b/indexer/src/main.rs
@@ -32,35 +32,30 @@ struct AppState {
 async fn main() -> std::io::Result<()> {
     println!("Hello, world! Im the indexer!");
 
-    serve_http_endpoint("0.0.0.0", 8080).await
+    serve_http_endpoint("0.0.0.0", 4444).await
 }
 
 async fn serve_http_endpoint(address: &str, port: u16) -> std::io::Result<()> {
     let shared_state = web::Data::new(AppState {
-        indexer: Mutex::new(Box::new(IndexerImplementation::new())),
+        indexer: Mutex::new(Box::new(IndexerImplementation::new())), //maybe mutex is not the best option
     });
     HttpServer::new(move || {
-        let cors = Cors::permissive();
         App::new()
-            .wrap(cors)
+            .wrap(Cors::permissive())
             .app_data(shared_state.clone())
             .service(add_resource)
             .service(
                 web::resource(["/api/search", "/api/search/", "/api/search/{query}"]).to(search),
             )
-            .service(
-                actix_web_lab::web::spa()
-                    .index_file("./frontend/dist/index.html")
-                    .static_resources_mount("/")
-                    .static_resources_location("./frontend/dist")
-                    .finish(),
-            ) //TODO: maybe separate gui backend from api?
     })
     .bind((address, port))?
     .run()
     .await
 }
 
+//TODO: Max description size
+//TODO: Current result below search bar updates with it
+
 //TODO: sufficiently simmilar word in search (algorithm)
 #[post("/api/resource")]
 async fn add_resource(