{"id":19361114,"url":"https://github.com/hmzelidrissi/carsapi","last_synced_at":"2026-04-13T06:12:02.120Z","repository":{"id":229835323,"uuid":"777760242","full_name":"HMZElidrissi/CarsAPI","owner":"HMZElidrissi","description":"CI/CD with Github Action Learning Project along with tests in PHPUnit","archived":false,"fork":false,"pushed_at":"2024-03-27T22:18:09.000Z","size":113,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-06T19:39:34.962Z","etag":null,"topics":["github-actions","laravel","phpunit"],"latest_commit_sha":null,"homepage":"https://cars-api-eosin.vercel.app/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HMZElidrissi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-26T13:10:03.000Z","updated_at":"2024-12-12T17:57:08.000Z","dependencies_parsed_at":"2024-11-12T18:53:18.367Z","dependency_job_id":null,"html_url":"https://github.com/HMZElidrissi/CarsAPI","commit_stats":null,"previous_names":["hmzelidrissi/carsapi"],"tags_count":0,"template":false,"template_full_name":"moghwan/laracel-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HMZElidrissi%2FCarsAPI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HMZElidrissi%2FCarsAPI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HMZElidrissi%2FCarsAPI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HMZElidrissi%2FCarsAPI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HMZElidrissi","download_url":"https://codeload.github.com/HMZElidrissi/CarsAPI/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240475756,"owners_count":19807386,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github-actions","laravel","phpunit"],"created_at":"2024-11-10T07:20:42.149Z","updated_at":"2026-04-13T06:12:02.072Z","avatar_url":"https://github.com/HMZElidrissi.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"### A Laravel / Vercel boilerplate template with php 8.3\nThis project will help you get started with a new Laravel project hosted on Vercel. It includes a basic setup for a Laravel project with a Vercel deployment pipeline. The project is setup to use:\n- PHP 8.3\n- Laravel 11\n- Supabase as a database engine\n- GitHub actions for deployment\n\nThe goal of this project is to provide a quick starting point as an alternative to (my case) DigitalOcean to run little projects with no cost.\n\n### Setup\n- create a new GitHub project using [this template repo](https://github.com/new?template_name=laracel-app\u0026template_owner=moghwan)\n\n### Getting your secrets\n- clone your repo and create a laravel app key:\n  - `php artisan key:generate`\n- Vercel: link your GitHub repo\n  - type: other\n  - deploy (it will fail and it's okay)\n- get your Vercel token \u0026 project/organization ids:\n  - https://vercel.com/moghwan/[YOUR-PROJECT]/settings \u003e Project ID\n    - change node js version to 18\n  - https://vercel.com/account \u003e Vercel ID (organization id)\n  - https://vercel.com/account/tokens \u003e create a new token (name it `VERCEL_LARACEL_TOKEN` for example)\n- Supabase: create a new project, password will be needed\n  - go to connect \u003e copy uri \n    \n### Setting your secrets\n- Vercel: settings \u003e environment variables\n  - `DB_URL`: copied uri, replace `[YOUR-PASSWORD]` with your Supabase project password\n  - `APP_KEY`: project id\n- GitHub: settings \u003e secrets \u0026 variables \u003e actions \u003e new repository secret\n  - `DB_URL`: copied uri, replace `[YOUR-PASSWORD]` with your Supabase project password\n  - `VERCEL_LARACEL_TOKEN`: copied token\n  - `VERCEL_ORG_ID`: copied organization id\n  - `VERCEL_PROJECT_ID`: copied project id\n- GitHub: actions \u003e redeploy last action\n\n### Keep in mind\n- Deployments are done with GitHub Actions and Vercel cli, not Vercel's auto deploy.\n- Deployment via Vercel cli are run with the flag --force to avoid using cache, notably the `composer.lock` file.\n- Database seeder are run with every deployment for demo purposes, disable it by commenting this line `.github/workflows/main.yml:26`\n- This is a **fresh Laravel 11** install, these following changes are made as needed:\n  - `api/index.php` - the entry point for the Vercel serverless function.\n  - `dist/` - an empty folder for the default Vercel deployment output.\n  - `.github/workflows/main.yml` - a GitHub Actions workflow file to deploy the app to Vercel.\n  - `vercel.json` - a Vercel configuration file to define the serverless function and the php runtime.\n  - `database/seeders/DatabaseSeeder.php` - using User factory to seed users table with data.\n  - API endpoints are prefixed with `/backend` instead of `/api`.\n- I avoided using sqlite for the database because it's not supported for writing by Vercel's serverless functions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhmzelidrissi%2Fcarsapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhmzelidrissi%2Fcarsapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhmzelidrissi%2Fcarsapi/lists"}