Hai, teman-teman! Jadi, kali ini kita bakal membuat aplikasi login dengan React yang... cukup lucu! Yups, kita nggak cuma login ke aplikasi ini, tapi juga ke dalam dunia yang penuh tawa (atau mungkin sedikit ketawa kecut kalau lupa password). Yuk, simak langkah-langkahnya!
Langkah 1: Siapkan Proyek React
Jangan takut, ini langkah paling mudah. Kita akan menggunakan create-react-app
, dan aplikasi kita bakal siap dalam sekejap!
npx create-react-app login-app
cd login-app
Ini seperti membeli tiket ke dunia React. Setelah ini, kita bisa mulai berpetualang!
Langkah 2: Buat Komponen Login dengan Segudang Senyum
Sekarang, saatnya kita buat komponen login yang bakal bikin pengguna senyum-senyum sendiri. Di dalam src
, buat file baru yang kita namakan Login.js
dan isi dengan kode lucu ini:
import React, { useState } from 'react';
import './Login.css'; // Gaya lucu agar makin kece
const Login = () => {
const [username, setUsername] = useState('');
const [password, setPassword] = useState('');
const [error, setError] = useState('');
const [success, setSuccess] = useState(false);
const handleSubmit = (e) => {
e.preventDefault();
if (username === 'superhero' && password === 'password123') {
setSuccess(true);
setError('');
} else {
setError('Yah, username atau password salah! Coba lagi ya, superhero!');
setSuccess(false);
}
};
return (
<div className="login-container">
<h2 className="login-title">Halo, Masuk Yuk!</h2>
{success && <p className="success-message">Yay! Kamu berhasil masuk, superhero! </p>}
{error && <p className="error-message">{error}</p>}
<form onSubmit={handleSubmit} className="login-form">
<div className="input-group">
<label htmlFor="username">Username (Psst... coba "superhero")</label>
<input
type="text"
id="username"
value={username}
onChange={(e) => setUsername(e.target.value)}
placeholder="Masukkan username kamu, jika kamu berani!"
/>
</div>
<div className="input-group">
<label htmlFor="password">Password (Coba yang klasik: "password123")</label>
<input
type="password"
id="password"
value={password}
onChange={(e) => setPassword(e.target.value)}
placeholder="Masukkan password kamu, super rahasia!"
/>
</div>
<button type="submit" className="login-button">
Masuk!
</button>
</form>
<p className="footer-text">Tenang, nggak ada yang serius di sini. </p>
</div>
);
};
export default Login;
Langkah 3: Tampil Kece dengan CSS Lucu
Agar aplikasimu makin menggemaskan, kita butuh sedikit sentuhan magis di bagian styling. Buat file Login.css
dengan gaya-gaya yang akan bikin pengguna terhibur (atau setidaknya nggak ngerasa kayak lagi kerja):
.login-container {
width: 100%;
max-width: 400px;
margin: 50px auto;
padding: 20px;
border-radius: 12px;
background-color: #f7f8fa;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
text-align: center;
}
.login-title {
font-family: 'Comic Sans MS', cursive, sans-serif;
color: #ff6347;
font-size: 28px;
margin-bottom: 20px;
}
.input-group {
margin-bottom: 15px;
text-align: left;
}
.input-group label {
font-size: 14px;
color: #555;
font-weight: bold;
}
input {
width: 100%;
padding: 12px;
margin-top: 5px;
font-size: 16px;
border-radius: 8px;
border: 2px solid #ddd;
box-sizing: border-box;
}
input:focus {
border-color: #ff6347;
outline: none;
}
.login-button {
background-color: #ff6347;
color: white;
border: none;
padding: 12px 20px;
border-radius: 8px;
font-size: 18px;
cursor: pointer;
transition: background-color 0.3s ease;
}
.login-button:hover {
background-color: #ff4500;
}
.success-message {
color: green;
font-size: 18px;
margin-bottom: 20px;
}
.error-message {
color: red;
font-size: 16px;
margin-bottom: 20px;
}
.footer-text {
font-size: 14px;
color: #777;
margin-top: 20px;
}
@keyframes bounce {
0%, 100% {
transform: translateY(0);
}
50% {
transform: translateY(-10px);
}
}
.login-button {
animation: bounce 1s infinite;
}
Langkah 4: Gabungkan di App.js
Sekarang, saatnya menggabungkan semuanya di App.js
. Masukkan komponen Login
ke dalam App.js
supaya bisa ditampilkan di aplikasi kita.
import React from 'react';
import Login from './Login';
import './App.css';
function App() {
return (
<div className="App">
<Login />
</div>
);
}
export default App;
Langkah 5: Jalankan Aplikasinya dan Tertawa Bersama!
Setelah semua siap, saatnya untuk menjalankan aplikasi. Cukup ketik perintah berikut di terminal:
npm start
Dan... tadaa! Sekarang kamu punya aplikasi login yang nggak cuma bisa masukin data, tapi juga bikin pengguna tertawa (atau paling nggak, senyum-senyum malu karena passwordnya salah).
Kesimpulan
Aplikasi login yang satu ini adalah contoh yang super sederhana, tapi bisa bikin suasana lebih menyenangkan. Kapan lagi bisa login sambil ketawa-ketawa? Semoga kamu suka, dan kalau ada ide untuk fitur-fitur lucu lainnya, jangan ragu untuk berbagi.
Gimana? Seru kan kalau setiap login bisa jadi pengalaman yang menghibur? Cobalah dan lihat sendiri reaksi teman-temanmu!
0 Comments