// Main container for the login screen
.bg-gray-100.min-h-screen.flex.items-center.justify-center.p-4
// Login card container
.bg-white.p-8.rounded-lg.shadow-lg.max-w-md.w-full
// Title of the login form
h2.text-2xl.font-bold.mb-6.text-center Login
// Login form
form(action="/login" method="POST")
// Email input field with label
label.block.mb-2.text-gray-700(for="email") Email
input#email.w-full.px-4.py-2.border.border-gray-300.rounded-md.mb-4(type="email" placeholder="Enter your email" required)
// Password input field with label
label.block.mb-2.text-gray-700(for="password") Password
input#password.w-full.px-4.py-2.border.border-gray-300.rounded-md.mb-4(type="password" placeholder="Enter your password" required)
// Submit button
button.bg-blue-500.text-white.w-full.px-4.py-2.rounded-md.text-lg.font-semibold(type="submit") Login
// Link for forgotten password
p.mt-4.text-center.text-sm.text-gray-600
a.text-blue-500.hover:underline(href="/forgot-password") Forgot your password? - bash/zsh
- keep in python
- rust/go # [clean]() Clean build directory
```bash
rm -rf ./build
```
# [format]() Format the source code
```bash
npx prettier --write .
```
# [build](clean format) Build the project
```bash
npm run build
```
# [deploy](build) Deploy to surge.sh
```bash
surge ./build my-project.surge.sh
```
This doesn't include file time modification between files as in Makefile. ## [clean]() Cleans the generated files
```bash
rm -rf ./build
```
## [init]() Initializes the build folder
```bash
mkdir -p ./build
```
## [build](clean, init) Builds the project
This command depends on clean, and init, which are executed in that order beforehand.
gcc magic.c -o ./build/magic