An example To Do App built with Laravel and React. It includes:
- An auth API, using tymon/jwt-auth to manage the JSON Web Tokens.
- Routing with react-router (private, public and split routes).
- Feature tests.
- Database seeding.
- A base ApiController to help return standardized responses.
- Bootstrap for styling.
Use it as a base for quick prototypes or to learn from. Suggestions, recommendations, and pull requests welcome!
View a demo of the app at laravelreact.com.
(Password resets will not be sent from this server. Data will be cleared on a regular basis.)
This project runs on a LEMP stack (Linux, NGINX, MySQL, & PHP).
The backend built with Laravel. The frontend is 100% React.
If you don't already have a LEMP environment running, Valet is a good option for OSX.
git clone https://github.com/devinsays/laravel-react-bootstrap
cp .env.example .env
The app key is used to salt passwords. If you need to work with production data you'll want to use the same app key as defined in the .env file in production so password hashes match.
- DB_DATABASE (your local database, i.e. "todo")
- DB_USERNAME (your local db username, i.e. "root")
- DB_PASSWORD (your local db password, i.e. "")
- HASHIDS_SALT (use the app key or match the variable used in production)
composer install
If you don't have Composer installed, instructions here.
php artisan key:generate
php artisan jwt:secret
php artisan migrate
npm install
If you don't have Node and NPM installed, instructions here.
npm run dev
If you need sample data to work with, you can seed the database:
php artisan migrate:refresh --seed --force
Read more in /docs/database-seeds.md.
After seeding the database, you can log in with these credentials:
Email: user@test.dev
Password: password
Laravel sends emails for password resets. The default for MAIL_DRIVER in .env.example is log. You can view logged emails in storage/logs/laravel.log.
Internal Docs:
Laravel Docs:
Valet Tutorial:
https://scotch.io/tutorials/use-laravel-valet-for-a-super-quick-dev-server