Overview
This guide will walk you through deploying Checawaa and completing your first successful login and attendance check-in. By the end, you’ll have:- A running Checawaa instance
- Admin and employee accounts configured
- Your first GPS-verified attendance record
This quick start focuses on getting you up and running fast. For detailed local development setup, see the Installation Guide.
Prerequisites
Before you begin, ensure you have:- Python 3.7 or higher installed
- A Gmail account for sending automated email reminders
- A device with GPS capability (for testing check-ins)
Step 1: Get the Code
Step 2: Install Dependencies
Install the required Python packages:Step 3: Configure Email Notifications
Checawaa sends automated reminder emails to employees who haven’t checked in by 8:00 AM. You need to configure Gmail SMTP:Update with your Gmail credentials
Replace the
MAIL_USERNAME and MAIL_PASSWORD with your Gmail address and app password.app.py
Generate a Gmail App Password
- Go to your Google Account settings
- Navigate to Security → 2-Step Verification
- Scroll to “App passwords” at the bottom
- Generate a new app password for “Mail”
- Copy the 16-character password (without spaces)
Step 4: Configure Default Users
On first run, Checawaa creates adata/usuarios.json file with default accounts. You can customize these before starting:
data/usuarios.json
The system will auto-generate this file on first run if it doesn’t exist. You can also pre-create it to customize the initial users.
Step 5: Start the Server
Run Checawaa locally:Step 6: Your First Login (Employee)
Open the application
Navigate to
http://localhost:5000/login in your web browser (use a device with GPS capability).Log in as an employee
Use the default credentials:
- Username:
employee1 - Password:
123
Step 7: First Check-In
Start your shift
On the employee dashboard, you’ll see:
- Welcome message with your username
- “Iniciar Turno” (Start Shift) button
- Last update timestamp
Step 8: View Admin Dashboard
Now let’s check the attendance from the admin perspective:Step 9: Test Key Features
Try these essential features:Generate a PDF Report
Click the ”📥 Reporte PDF” button to download a comprehensive attendance report with:- Complete check-in history
- Individual tardiness counts
- Professional formatting
Send Manual Reminders
Click ”📧 Notificar Faltantes” to immediately send reminder emails to employees who haven’t checked in today.Test Automatic Reminders
The system automatically sends emails at 8:00 AM to employees without check-ins. To test:Understanding Attendance Status
Checawaa uses simple time-based rules:| Check-In Time | Status | Badge Color |
|---|---|---|
| Before 8:30 AM | PUNTUAL (On Time) | Green |
| After 8:30 AM | RETARDO (Tardy) | Red |
hora > "08:30:00" to determine tardiness status (see app.py:149 and app.py:206).
Next Steps
You’ve successfully:- ✅ Deployed Checawaa locally
- ✅ Completed your first employee check-in
- ✅ Viewed the admin dashboard
- ✅ Generated a PDF report
Continue Learning
Installation Guide
Set up for development with environment variables and production deployment
API Reference
Explore all available endpoints and integrations
Configuration
Customize reminder times, tardiness thresholds, and email templates
Deployment
Deploy to production with Heroku, Railway, or your own server
Troubleshooting
GPS Not Working
Email Not Sending
- Verify Gmail App Password is correct (no spaces)
- Check that “Less secure app access” is NOT enabled (use App Password instead)
- Review console output for specific error messages from Flask-Mail
”Activa el GPS” Alert
This means the browser couldn’t access GPS. Common causes:- Location permissions denied
- Running on HTTP (not HTTPS) on a remote server
- Device doesn’t have GPS hardware
Can’t Access Admin Dashboard
Ensure you’re logged in with theadmin username. The system checks current_user.id != 'admin' and redirects non-admin users to the employee dashboard (see app.py:137-138).