Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tbreuss/pingcrm-yii2
Ping CRM on Yii 2 - A Yii 2 demo application to illustrate how Inertia.js works.
https://github.com/tbreuss/pingcrm-yii2
demo hacktoberfest inertiajs vuejs yii2
Last synced: 2 days ago
JSON representation
Ping CRM on Yii 2 - A Yii 2 demo application to illustrate how Inertia.js works.
- Host: GitHub
- URL: https://github.com/tbreuss/pingcrm-yii2
- Owner: tbreuss
- License: bsd-3-clause
- Created: 2020-02-08T07:09:07.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-07T14:53:49.000Z (almost 2 years ago)
- Last Synced: 2024-07-31T19:45:53.000Z (4 months ago)
- Topics: demo, hacktoberfest, inertiajs, vuejs, yii2
- Language: PHP
- Homepage: https://pingcrm-yii2.tebe.ch
- Size: 2.16 MB
- Stars: 55
- Watchers: 6
- Forks: 14
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
![Build & Deploy](https://github.com/tbreuss/pingcrm-yii2/workflows/Build%20&%20Deploy/badge.svg)
# Ping CRM on Yii 2
A Yii 2 demo application to illustrate how [Inertia.js](https://inertiajs.com) works.
With Inertia you are able to build single-page apps using classic server-side routing and controllers, without building an API.
This application is a port of the original [Ping CRM written in Laravel](https://github.com/inertiajs/pingcrm) and based on the [Yii 2 Basic Project Template](https://github.com/yiisoft/yii2-app-basic).
![](screenshot.png)
## Demo
## Installation
Clone the repo locally:
```sh
git clone https://github.com/tbreuss/pingcrm-yii2 pingcrm-yii2
cd pingcrm-yii2
```Install PHP dependencies:
```sh
composer install
```Install NPM dependencies:
```sh
npm ci
```Build assets:
```sh
npm run dev
npm run css-dev
```Create an SQLite database. You can also use another database (MySQL, Postgres), simply update your configuration accordingly.
```sh
touch database/database.sqlite
```Run database migrations:
```sh
php yii migrate
```Run database seeder:
```sh
php yii db/seed
```Run the dev server (the output will give the address):
```sh
php yii serve
```You're ready to go! Visit Ping CRM in your browser, and login with:
- **Username:** [email protected]
- **Password:** secret## Running tests
To run the Ping CRM tests, run:
```
(to be done)
```## Requirements
- PHP >= 5.6.0
- Node.js & NPM
- SQLite## Extending this project
The following steps are required when extending this project with new features.
### In the backend
- add new controller, that extends from inertia controller
- add one ore more actions
- return from the actions with a call to the inertia render method~~~php
[],
];
return $this->inertia('demo/index', $params);
}
}
~~~You can find more information at .
### In the frontend
- add a new page under `resources/js/Pages` for each controller action you added in the backend
- copy&paste one of the existing page examples
- implement and/or extend Vue.js stuff as needed
- use frontend tooling as described here and in package.jsonYou can find more information at .
## Credits
- Original work by Jonathan Reinink (@reinink) and contributors
- Port to Yii 2 by Thomas Breuss (@tbreuss)