- PHP 51.9%
- Blade 15.8%
- JavaScript 10%
- Kotlin 9.6%
- Swift 7.1%
- Other 5.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| api | ||
| bin | ||
| desktop | ||
| mobile | ||
| shared | ||
| .gitignore | ||
| docker-compose-api.yml | ||
| README.md | ||
About
Internship project built in Laravel with NativePhp
Not much to it, just a kanban todo board, but the cool part is NATIVE device API access, allowing for NFC scanning, picture taking and much more (please look around, you will find cool features).
Note
Completely optional, works fine without sync server, just will not sync as the name implies..
Syncs across devices, to sync, run API server located in /api/ or use the docker-compose-api.yml file
AI Usage
Started escalating at the end, due to general boredom and just being "locked" in a room for 8 hours... more features were requested by the internship and we (@smil & me) just couldn't be bothered honestly...
Setup
git clone https://git.smilt.dev/extend/todo-app
cd todo-app
Prerequisites
- PHP8.4 or greater
- Laravel (installed with composer)
- NPM
- sqlite
- Android SDK
- Android mobile device or Android studio
.env
- Copy .env.example, rename to .env
- Change
APP_NAMEto your preferred name - Change
NATIVEPHP_APP_IDif needed or want to.. - Change
SYNC_API_URLto your sync API route:port if using such. - Disable
APP_DEBUG=trueif you don't feel like waiting half a century for cold-boot - Change Android SDK location
Mobile
cd mobile
composer install
cp .env.example .env
php artisan key:generate
php artisan native:run android
Desktop
cd desktop
composer install
cp .env.example .env
php artisan key:generate
php artisan native:install
php artisan native:run
Web
You can also use it in your web-browser, simply:
cd desktop
composer install
cp .env.example .env
php artisan key:generate
php artisan native:install
php artisan serve
Then go to the provided route:port.
Search
Not explicitly mentioned anywhere, but you can filter through tags like this --> %tag
Push notifications
Note
Optional
Also can be set up, place google-services.json in the directory root, then in /api/ rename the private key .json file to fcm-service-account.json and move it under any preferred path (I prefer /api/storage/app/private/*)
Add paths to fcm-service-account.json in /api/.env
Basically, just follow this guide: NativePHP Docs
Triggers when another device has logged into your account