add basic login, signup, navbar

This commit is contained in:
afazio1
2024-03-24 18:02:40 -04:00
parent f6202bfb79
commit fdb7b3a1ce
13 changed files with 129 additions and 20 deletions

View File

View File

@@ -1,12 +1,21 @@
import './App.css'
import "./styles/App.css";
import { Link } from 'react-router-dom';
function App() {
export default function App() {
return (
<>
<Navbar />
<h1>PeerNotes</h1>
</>
)
}
export default App
function Navbar() {
return (
<nav>
<Link to="/">Home</Link>
<Link to="/logout">Logout</Link>
</nav>
);
}

View File

@@ -1,7 +0,0 @@
export default function Login() {
return (
<div>
<h1>Login</h1>
</div>
);
}

View File

@@ -1,7 +0,0 @@
export default function Signup() {
return (
<div>
<h1>Signup</h1>
</div>
);
}

View File

@@ -2,9 +2,33 @@ import React from 'react'
import ReactDOM from 'react-dom/client'
import App from './App.tsx'
import './index.css'
import {
createBrowserRouter,
RouterProvider,
} from "react-router-dom";
import Login from './screens/Login.tsx';
import Signup from './screens/Signup.tsx';
const router = createBrowserRouter([
{
path: "/",
element: <App />,
children: [
// add more routes here
]
},
{
path: "/login",
element: <Login />,
},
{
path: "/signup",
element: <Signup />,
},
]);
ReactDOM.createRoot(document.getElementById('root')!).render(
<React.StrictMode>
<App />
<RouterProvider router={router} />
</React.StrictMode>,
)

View File

@@ -0,0 +1,19 @@
import { Link } from "react-router-dom"
import "../styles/Login.css"
export default function Login() {
return (
<main>
<form>
<h1>Login</h1>
<div className="form-inputs">
<label htmlFor="username">Username</label>
<input type="text" name="username" id="username" />
<label htmlFor="password">Password</label>
<input type="password" name="password" id="password" />
</div>
<button>Login</button>
<p>or <Link to="/signup">Sign up</Link></p>
</form>
</main>
);
}

View File

@@ -0,0 +1,19 @@
import { Link } from "react-router-dom";
import "../styles/Login.css"
export default function Signup() {
return (
<main>
<form>
<h1>Sign Up</h1>
<div className="form-inputs">
<label htmlFor="username">Username</label>
<input type="text" name="username" id="username" />
<label htmlFor="password">Password</label>
<input type="password" name="password" id="password" />
</div>
<button>Sign up</button>
<p>or <Link to="/login">Login</Link></p>
</form>
</main>
);
}

View File

@@ -0,0 +1,9 @@
nav {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1rem 2rem;
border: 3px solid #f1f1f1;
border-radius: 5px;
color: white;
}

View File

@@ -0,0 +1,20 @@
form {
display: flex;
flex-direction: column;
justify-content: center;
gap: 0.5rem;
}
main {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
h1 {
text-align: center;
}
.form-inputs {
display: flex;
flex-direction: column;
}