if you want to run the project locally make sure you have installed nodejs, pnpm. to install node js go to nodejs to install pnpm run the following command
npm install -g pnpm
if you want to run the project using docker make sure you have installed docker.
to install docker go to docker
to run the project using docker run the following command
docker compose -d up
or pull the image from docker hub
docker pull iru44/laravel-template
make sure you pull the database image from docker hub as well
then run the following command
docker run -p 3000:3000 iru44/laravel-template
if you want to run the project using kubernetes make sure you have installed minikube.
to install minikube go to minikube to install kubectl go to kubectl
git clone https://github.com/CLIuno/CLIuno-Laravel-template.git
then run the following command
pnpm install
to run the project run the following command
pnpm dev
list of features that already implemented:
Status | Feature |
---|---|
[ ] | Auth routes |
[ ] | User routes |
[ ] | Role routes |
[ ] | Post routes |
[ ] | User Role routes |
[ ] | CI/CD with GitHub Actions |
✅ | Mailer |
✅ | Logging |
[ ] | Dockerize |
[ ] | Kubernetes |
[ ] | Soft delete |
✅ | SQLite database |
[ ] | Fully documentation |
✅ | Postman collection just basic |
You will get more features if you buy the full version and you can use it for commercial purposes (contact me for more information)
Status | Feature |
---|---|
✅ | Vote routes |
✅ | Comment routes |
✅ | Permission routes |
✅ | Reacion routes |
✅ | Payment routes |
✅ | Notification routes |
✅ | Pagination |
✅ | Redis cache |
✅ | File upload |
✅ | Fully unit test |
✅ | Database Factory |
✅ | Make use of Enums |
✅ | GraphQL (Optional) |
✅ | Postman collection extra |
✅ | Postgres database or MongoDB |
Status | Endpoint Description | Method | Path |
---|---|---|---|
✅ | Login | POST | /api/v1/auth/login |
[ ] | Register | POST | /api/v1/auth/register |
[ ] | Logout | POST | /api/v1/auth/logout |
✅ | Reset Password | POST | /api/v1/auth/reset-password |
✅ | Forgot Password | POST | /api/v1/auth/forgot-password |
✅ | Change Password | POST | /api/v1/auth/change-password |
✅ | Send Verification Email | POST | /api/v1/auth/send-verify-email |
✅ | Verify Email | POST | /api/v1/auth/verify-email |
[ ] | Check Token | POST | /api/v1/auth/check-token |
[ ] | Refresh Token | POST | /api/v1/auth/refresh-token |
✅ | Verify OTP | POST | /api/v1/auth/otp/verify |
✅ | Disable OTP | POST | /api/v1/auth/otp/disable |
✅ | Validate OTP | POST | /api/v1/auth/otp/validate |
✅ | Generate OTP | POST | /api/v1/auth/otp/generate |
Status | Endpoint Description | Method | Path |
---|---|---|---|
[ ] | Get all current user | GET | /api/v1/users/current |
[ ] | Get user by username | GET | /api/v1/users/username/:username |
[ ] | Get all users | GET | /api/v1/users |
[ ] | Get a user by ID | GET | /api/v1/users/:id |
[ ] | Update user by ID | PATCH | /api/v1/users/:id |
[ ] | Delete user by ID | DELETE | /api/v1/users/:id |
[ ] | Get permissions by user | GET | /api/v1/users/:user_id/permissions |
[ ] | Get posts by user | GET | /api/v1/users/:user_id/posts |
[ ] | Get roles by user | GET | /api/v1/users/:user_id/roles |
Status | Endpoint Description | Method | Path |
---|---|---|---|
[ ] | Get all roles | GET | /api/v1/roles |
[ ] | Get role by ID | GET | /api/v1/roles/:id |
[ ] | Create a role | POST | /api/v1/roles |
[ ] | Update role by ID | PATCH | /api/v1/roles/:id |
[ ] | Delete role by ID | DELETE | /api/v1/roles/:id |
[ ] | Get permissions by role | GET | /api/v1/roles/:role_id/permissions |
[ ] | Get users by role | GET | /api/v1/roles/:role_id/users |
Status | Endpoint Description | Method | Path |
---|---|---|---|
[ ] | Get all current user posts | GET | /api/v1/posts/current-user |
[ ] | Get all posts | GET | /api/v1/posts |
[ ] | Get post by ID | GET | /api/v1/posts/:id |
[ ] | Create a post | POST | /api/v1/posts |
[ ] | Update post by ID | PATCH | /api/v1/posts/:id |
[ ] | Delete post by ID | DELETE | /api/v1/posts/:id |
[ ] | Get users by post | GET | /api/v1/posts/:post_id/user |