Quick Start
Get up and running with Bowlerplate in under 10 minutes.
This guide assumes you've already read the Prerequisite section and have all requirements installed.
Time Estimate: ~10 minutes for a fully working development environment.
Clone the Repository
After completing your purchase, you'll receive access to the private repository. Clone it to your local machine:
git clone https://github.com/your-username/bowlerplate.git my_app_name
cd my_app_nameBackend Setup
Install PHP Dependencies
Navigate to the backend folder and install Composer dependencies:
cd backend
composer installConfigure Environment
Copy the example environment file and generate an application key:
cp .env.example .env
php artisan key:generateSetup Database
The boilerplate uses SQLite by default for quick local development. Run migrations and seeders:
php artisan migrate --seedThe seeder creates a default admin user: admin@example.com / password
Install Frontend Dependencies
Install Node.js dependencies for the admin panel:
bun install
# or: npm installStart the Backend Server
php artisan serveYour API is now running at http://localhost:8000. You can access the Filament admin panel at http://localhost:8000/admin.
Mobile App Setup
Open a new terminal window and navigate to the mobile folder:
Install Flutter Dependencies
cd mobile
flutter pub getConfigure API Endpoint
Open lib/constants/api_endpoints.dart and update the baseURL to point to your local backend:
static const String baseURL = "http://10.0.2.2:8000"; // Android Emulator
// or: "http://localhost:8000" for iOS Simulator
// or: "http://YOUR_LOCAL_IP:8000" for physical deviceAndroid emulators can't access localhost. Use 10.0.2.2 instead, which maps to your host machine's localhost.
Run Code Generation
Generate model classes and freezed files:
dart run build_runner build --delete-conflicting-outputsLaunch the App
flutter runVerify Everything Works
Once both the backend and mobile app are running:
- Open the mobile app – You should see the onboarding/login screen
- Register a new account or login with the seeded credentials
- Access the admin panel at
http://localhost:8000/adminusingadmin@example.com/password
What's Next?
Project Structure
Understand how the codebase is organized.
Features Overview
Explore all the built-in features.
Customization Guide
Make the boilerplate your own.
Troubleshooting
Connection Refused on Mobile
If the mobile app can't connect to the backend:
- Android Emulator: Use
http://10.0.2.2:8000instead oflocalhost - iOS Simulator:
localhostshould work, but try127.0.0.1if it doesn't - Physical Device: Use your computer's local IP (e.g.,
192.168.1.x)
Database Errors
If you encounter database errors:
php artisan migrate:fresh --seedThis resets the database and re-runs all seeders.
Build Runner Conflicts
If code generation fails:
dart run build_runner clean
dart run build_runner build --delete-conflicting-outputs