simple_auth_package 0.0.2
simple_auth_package: ^0.0.2 copied to clipboard
A reusable Flutter authentication package providing login, registration, and input validation using clean architecture and API integration
example/lib/main.dart
import 'package:flutter/material.dart';
import 'package:simple_auth_package/simple_auth_package.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
home: LoginPage(),
);
}
}
class LoginPage extends StatefulWidget {
const LoginPage({super.key});
@override
State<LoginPage> createState() => _LoginPageState();
}
class _LoginPageState extends State<LoginPage> {
final auth = AuthService(baseUrl: "https://example.com/api");
final email = TextEditingController();
final password = TextEditingController();
String msg = "";
void login() async {
try {
final user = await auth.login(
email: email.text,
password: password.text,
);
setState(() {
msg = "Welcome ${user.email}";
});
} catch (e) {
setState(() {
msg = e.toString();
});
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("Auth Example")),
body: Padding(
padding: const EdgeInsets.all(16),
child: Column(
children: [
TextField(controller: email, decoration: const InputDecoration(labelText: "Email")),
TextField(controller: password, obscureText: true, decoration: const InputDecoration(labelText: "Password")),
const SizedBox(height: 20),
ElevatedButton(onPressed: login, child: const Text("Login")),
const SizedBox(height: 20),
Text(msg),
],
),
),
);
}
}