From 8b4440f7236b0972c1a804eea4c8305b958ad03c Mon Sep 17 00:00:00 2001 From: Ilion Beyst Date: Mon, 13 Dec 2021 15:43:47 +0100 Subject: setup basic rocket+diesel app --- backend/src/main.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 backend/src/main.rs (limited to 'backend/src/main.rs') diff --git a/backend/src/main.rs b/backend/src/main.rs new file mode 100644 index 0000000..fd0ff2e --- /dev/null +++ b/backend/src/main.rs @@ -0,0 +1,15 @@ +#![feature(proc_macro_hygiene, decl_macro)] + +#[macro_use] +extern crate rocket; +#[macro_use] +extern crate rocket_contrib; + +#[get("/")] +fn index() -> &'static str { + "Hello, world!" +} + +fn main() { + rocket::ignite().mount("/", routes![index]).launch(); +} -- cgit v1.2.3 From eabeb7ed7b641dea0b8e71ab33ab97b4ed7a4cda Mon Sep 17 00:00:00 2001 From: Ilion Beyst Date: Mon, 13 Dec 2021 22:41:20 +0100 Subject: start implementing basic login functionality --- backend/src/main.rs | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'backend/src/main.rs') diff --git a/backend/src/main.rs b/backend/src/main.rs index fd0ff2e..6ee54ec 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -1,15 +1,36 @@ #![feature(proc_macro_hygiene, decl_macro)] +use rocket::{Build, Rocket}; +use rocket_sync_db_pools::database; + #[macro_use] extern crate rocket; #[macro_use] -extern crate rocket_contrib; +extern crate diesel; + +mod db; +mod routes; +mod schema; + +#[database("postgresql_database")] +pub struct DbConn(diesel::PgConnection); #[get("/")] fn index() -> &'static str { "Hello, world!" } -fn main() { - rocket::ignite().mount("/", routes![index]).launch(); +#[launch] +fn rocket() -> Rocket { + rocket::build() + .mount( + "/", + routes![ + index, + routes::users::register, + routes::users::login, + routes::users::current_user, + ], + ) + .attach(DbConn::fairing()) } -- cgit v1.2.3 From 13cdbc7ff760ae91ee3f62b2a2f62c7559ccaa3c Mon Sep 17 00:00:00 2001 From: Ilion Beyst Date: Tue, 14 Dec 2021 20:23:07 +0100 Subject: test registration & login --- backend/src/main.rs | 34 +++------------------------------- 1 file changed, 3 insertions(+), 31 deletions(-) (limited to 'backend/src/main.rs') diff --git a/backend/src/main.rs b/backend/src/main.rs index 6ee54ec..65be48d 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -1,36 +1,8 @@ -#![feature(proc_macro_hygiene, decl_macro)] - -use rocket::{Build, Rocket}; -use rocket_sync_db_pools::database; - #[macro_use] extern crate rocket; -#[macro_use] -extern crate diesel; - -mod db; -mod routes; -mod schema; - -#[database("postgresql_database")] -pub struct DbConn(diesel::PgConnection); - -#[get("/")] -fn index() -> &'static str { - "Hello, world!" -} +extern crate mozaic4_backend; #[launch] -fn rocket() -> Rocket { - rocket::build() - .mount( - "/", - routes![ - index, - routes::users::register, - routes::users::login, - routes::users::current_user, - ], - ) - .attach(DbConn::fairing()) +fn launch() -> _ { + mozaic4_backend::rocket() } -- cgit v1.2.3 From 6aa72b3c8717f32e62c772aeed327d3cd9a6fa65 Mon Sep 17 00:00:00 2001 From: Ilion Beyst Date: Wed, 15 Dec 2021 22:40:55 +0100 Subject: gracefully handle invalid login credentials --- backend/src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'backend/src/main.rs') diff --git a/backend/src/main.rs b/backend/src/main.rs index 65be48d..3c0efa8 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -3,6 +3,6 @@ extern crate rocket; extern crate mozaic4_backend; #[launch] -fn launch() -> _ { +fn launch() -> rocket::Rocket { mozaic4_backend::rocket() } -- cgit v1.2.3 From 1fb4a5151bd8cfe6de4d8c19e2066a9281a0b61a Mon Sep 17 00:00:00 2001 From: Ilion Beyst Date: Wed, 29 Dec 2021 16:11:27 +0100 Subject: migrate to axum --- backend/src/main.rs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'backend/src/main.rs') diff --git a/backend/src/main.rs b/backend/src/main.rs index 3c0efa8..c75aaf6 100644 --- a/backend/src/main.rs +++ b/backend/src/main.rs @@ -1,8 +1,16 @@ -#[macro_use] -extern crate rocket; +use std::net::SocketAddr; + extern crate mozaic4_backend; +extern crate tokio; + +#[tokio::main] +async fn main() { + let app = mozaic4_backend::app().await; + + let addr = SocketAddr::from(([127, 0, 0, 1], 9000)); -#[launch] -fn launch() -> rocket::Rocket { - mozaic4_backend::rocket() + axum::Server::bind(&addr) + .serve(app.into_make_service()) + .await + .unwrap(); } -- cgit v1.2.3