diff --git a/.env.sample b/.env.sample new file mode 100644 index 0000000..7523fd2 --- /dev/null +++ b/.env.sample @@ -0,0 +1,7 @@ +# Web server +SERVER_ADDRESS=localhost +SERVER_PORT=9090 + +# Database +DATABASE_URL=sqlite:db.db +# DATABASE_URL=postgres://USER:PASSWORD@localhost:5432/label_editor diff --git a/frontend/package-lock.json b/frontend/package-lock.json index eb7d725..12ae0ab 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -9,15 +9,15 @@ "dependencies": { "@fontsource/roboto": "5.2.9", "@mdi/font": "7.4.47", - "@pinia/nuxt": "^0.11.3", + "@pinia/nuxt": "0.11.3", "nuxt": "4.2.2", "pinia": "^3.0.4", "vue": "3.5.26", "vue-router": "4.6.4" }, "devDependencies": { - "vite-plugin-vuetify": "^2.1.2", - "vuetify": "^3.11.6" + "vite-plugin-vuetify": "2.1.2", + "vuetify": "3.11.6" } }, "node_modules/@babel/code-frame": { diff --git a/src/main.rs b/src/main.rs index e08ea05..55af3de 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,12 +1,22 @@ +use std::env; use axum::{ routing::{get, post}, http::StatusCode, Json, Router, }; +use dotenv::dotenv; use serde::{Deserialize, Serialize}; #[tokio::main] async fn main() { + dotenv().ok(); + + let server_address = env::var("SERVER_ADDRESS").expect("SERVER_ADDRESS is not set in .env file"); + let server_port = env::var("SERVER_PORT").expect("SERVER_PORT is not set in .env file"); + let database = env::var("DATABASE_URL").expect("DATABASE is not set in .env file"); + + let addr = format!("{}:{}", server_address, server_port); + // initialize tracing tracing_subscriber::fmt::init(); @@ -18,7 +28,7 @@ async fn main() { .route("/users", post(create_user)); // run our app with hyper, listening globally on port 3000 - let listener = tokio::net::TcpListener::bind("0.0.0.0:9090").await.unwrap(); + let listener = tokio::net::TcpListener::bind(addr).await.unwrap(); axum::serve(listener, app).await.unwrap(); }