feat: add webrtc to projects

This commit is contained in:
Ahmet Kaan Gümüş 2025-05-13 05:26:02 +03:00
parent 00123c8035
commit 8a959cc6f5
2 changed files with 63 additions and 15 deletions

View file

@ -4,31 +4,42 @@
font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
} }
.project{ .project {
margin: 1%; margin: 1%;
h1 { h1 {
color: azure; color: azure;
} }
h3 { h3 {
margin-top: 1%; margin-top: 1%;
color: aliceblue; color: aliceblue;
} }
h5 { h5 {
margin-bottom: 1%; margin-bottom: 1%;
color: antiquewhite; color: antiquewhite;
} }
div { div {
margin-top: 1%; margin-top: 1%;
display:block; display: block;
@media screen { @media screen {
width: 50%; width: 50%;
} }
@media screen and (max-width:820px){ @media screen and (max-width:820px) {
width: 100%; width: 100%;
} }
} }
} }
#source_link_in_project_page {
text-decoration: none;
color: burlywood;
}
#codeberg_link_in_project_page { #codeberg_link_in_project_page {
text-decoration: none; text-decoration: none;
color: rgb(33, 133, 208, 1.0); color: rgb(33, 133, 208, 1.0);
@ -45,27 +56,32 @@
margin: 1%; margin: 1%;
} }
.links{ .links {
margin: 1%; margin: 1%;
h1 { h1 {
color: azure; color: azure;
} }
h3 { h3 {
margin-top: 1%; margin-top: 1%;
color: aliceblue; color: aliceblue;
} }
h5 { h5 {
margin-bottom: 1%; margin-bottom: 1%;
color: antiquewhite; color: antiquewhite;
} }
div { div {
margin-top: 1%; margin-top: 1%;
display:block; display: block;
@media screen { @media screen {
width: 50%; width: 50%;
} }
@media screen and (max-width:820px){ @media screen and (max-width:820px) {
width: 100%; width: 100%;
} }
} }
@ -92,27 +108,32 @@
margin: 1%; margin: 1%;
} }
.project{ .project {
margin: 1%; margin: 1%;
h1 { h1 {
color: azure; color: azure;
} }
h3 { h3 {
margin-top: 1%; margin-top: 1%;
color: aliceblue; color: aliceblue;
} }
h5 { h5 {
margin-bottom: 1%; margin-bottom: 1%;
color: antiquewhite; color: antiquewhite;
} }
div { div {
margin-top: 1%; margin-top: 1%;
display:block; display: block;
@media screen { @media screen {
width: 50%; width: 50%;
} }
@media screen and (max-width:820px){ @media screen and (max-width:820px) {
width: 100%; width: 100%;
} }
} }
@ -147,15 +168,16 @@ body {
} }
.main_nav_btn { .main_nav_btn {
text-decoration:overline silver; text-decoration: overline silver;
color: burlywood; color: burlywood;
text-shadow: 1px 1px orange; text-shadow: 1px 1px orange;
padding: 5%; padding: 5%;
@media screen { @media screen {
font-size: xx-large; font-size: xx-large;
} }
@media screen and (max-width:820px){ @media screen and (max-width:820px) {
font-size: x-large; font-size: x-large;
} }
} }
@ -165,7 +187,7 @@ body {
} }
.main_nav { .main_nav {
display:inline-flex; display: inline-flex;
padding-top: 1%; padding-top: 1%;
padding-bottom: 1%; padding-bottom: 1%;
background-blend-mode: multiply; background-blend-mode: multiply;
@ -177,13 +199,14 @@ body {
#main_about { #main_about {
display:block; display: block;
white-space: pre-line; white-space: pre-line;
@media screen { @media screen {
width: 50%; width: 50%;
} }
@media screen and (max-width:820px){ @media screen and (max-width:820px) {
width: 100%; width: 100%;
} }
} }
@ -200,7 +223,7 @@ header {
} }
#title { #title {
color:aqua; color: aqua;
margin-top: 1%; margin-top: 1%;
margin-bottom: 1%; margin-bottom: 1%;
} }

View file

@ -19,6 +19,7 @@ pub fn Projects() -> Element {
div { class: "project_link", Link {to: Route::Project { id: 8 }, class: "project_link", "Optimization Algorithms"} } div { class: "project_link", Link {to: Route::Project { id: 8 }, class: "project_link", "Optimization Algorithms"} }
div { class: "project_link", Link {to: Route::Project { id: 9 }, class: "project_link", "Forum"} } div { class: "project_link", Link {to: Route::Project { id: 9 }, class: "project_link", "Forum"} }
div { class: "project_link", Link {to: Route::Project { id: 10 }, class: "project_link", "Voice Chat"} } div { class: "project_link", Link {to: Route::Project { id: 10 }, class: "project_link", "Voice Chat"} }
div { class: "project_link", Link {to: Route::Project { id: 11 }, class: "project_link", "WebRTC"} }
} }
Footer {} Footer {}
} }
@ -324,6 +325,30 @@ pub fn Project(id: i32) -> Element {
} }
} }
} }
11 => {
rsx! {
div {
class:"project",
h1 {"WebRTC"}
h5 {"WebRTC Voice Chat written in Rust."}
Link {id: "source_link_in_project_page", to: "https://source.tahinli.com/Tahinli/rust_webrtc", "Source"}
div {
"
In this project I wanted to implement voice chat with WebRTC.
"
}
h3 {"Why I did this ?"}
div {
"I wanted to use WebRTC."
}
h3 {"What I learned ?"}
div {
"Streaming with WebRTC with low level browser WASM API."
}
}
}
}
_ => { _ => {
rsx! { rsx! {
h1 {"You're not supposed to be here"} h1 {"You're not supposed to be here"}