kraenzle-ritter/resources
resources
Resource Model and a hasResource trait where resources are basically links to a resources (eg. Wikipedia-Article or GND-Entry). Livewire Components (Bootstrap 5) for searching, selecting and listing the links.
Supported Providers
- GND (Gemeinsame Normdatei)
- Geonames (Geographical database)
- Wikipedia (Multiple languages: DE, EN, FR, IT some others)
- Wikidata (Structured data)
- Idiotikon (Swiss German dictionary)
- Ortsnamen.ch (Swiss place names)
- Metagrid (Swiss humanities database network)
- Anton API (Archives and collections)
- Manual Input (Custom links)
Installation
Via Composer
$ composer require kraenzle-ritter/resources
Then either run php artisan vendor:publish and publish the migration or copy the file to your migrations directory. Then run php artisan migrate.
Usage
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model
use KraenzleRitter\Resources\hasResources;
class MyModel extends Model
{
use hasResources;
...
}
Then you are ready to go:
$resource = [
'provider' => 'Wikipedia',
'provider_id' => 4013996,
'url' => 'https://fr.wikipedia.org/wiki/Érik_Desmazières'
// optional 'full_json' => [...]
];
$model = MyModel::find(1);
$this->model->updateOrCreateResource($resource);
$model->resources;
...
With the artisan-command
php artisan resources:fetch --provider=gnd // or wikidata or wikipedia
You can add more resources to a model which already has a gnd link. You can configure the list of resources in the config file.
License
License. Please see the license file for more information.
Related Packages
codemystify/laravel-types-generator
Simplified TypeScript types generator for Laravel applications with developer-de...
261
3
balismatz/filament-prevent-outdated-record-update
Filament package to prevent the update of outdated records.
7,570
7