Skip to content

Commit

Permalink
docs: update README.md
Browse files Browse the repository at this point in the history
Closes: #361
  • Loading branch information
b1rger committed Oct 19, 2023
1 parent 025186f commit aa91950
Show file tree
Hide file tree
Showing 2 changed files with 127 additions and 218 deletions.
127 changes: 127 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
APIS
====

![GitHub release (with filter)](https://img.shields.io/github/v/release/:user/:repo)

![Django Tests](https://github.com/acdh-oeaw/apis-core-rdf/actions/workflows/django-tests.yml/badge.svg)

The *Austrian Prosophographic Information System* is a
[Django](https://www.djangoproject.com/) based prosopography framework. It
allows to create web applications to manage both entities and relations between
entities. It provides API access to the data in various formats and creates
swagger defintions. A swagger-ui allows for comfortable access to the data.

Data can also be imported from remote resources described in
[RDF](https://en.wikipedia.org/wiki/Resource_Description_Framework).

In addition to this configurable import of data via RDF, there is also an
configurable serialization of data. The generic RestAPI of APIS provides data
either in the internal JSON format, TEI or RDF (serialized with *CIDOC CRM*).

APIS comes with a built in system of autocompletes that allows researchers to
import meta-data of entities with just a single click. Out of the box APIS
supports Stanbol as a backend for the autocompletes, but the system is rather
easy to adapt to any Restfull API. APIS also supports the parsing of RDFs
describing entities into an entity. The parsing is configured in a settings
file.

*Entities*

*Relations*

Licensing
---------

All code unless otherwise noted is licensed under the terms of the MIT License
(MIT). Please refer to the file LICENSE.txt in the root directory of this
repository.

All documentation and images unless otherwise noted are licensed under the
terms of Creative Commons Attribution-ShareAlike 4.0 International License. To
view a copy of this license, visit
http://creativecommons.org/licenses/by-sa/4.0/


Installation
------------

Create a project using your favourite package manager:

```shell
poetry new foobar --name apis_ontology
```

Currently (as of 2023-10) the name of the apis application **has** to be
`apis_ontology` - this is considered a bug and is tracked in [this bug
report](https://github.com/acdh-oeaw/apis-core-rdf/issues/100).

In your project folder, add apis as a dependency:

```shell
poetry add git+https://github.com/acdh-oeaw/apis-core-rdf#v0.6.1
```

Setup your Django project
```shell
rm -rf apis_ontology
poetry run django-admin startproject apis_ontology .
```

Now start using your Django project
```shell
poetry run ./manage.py runserver
```

To use the APIS framework in your application, add the following APIS modules to your Django settings module:

```python
"apis_ontology",
"apis_core.core",
"apis_core.apis_entities",
"apis_core.apis_metainfo",
"apis_core.apis_relations",
"apis_core.apis_vocabularies",
"apis_core.apis_labels",

```

### Dependencies

```shell
poetry add git+https://github.com/acdh-oeaw/apis-override-select2js#v0.1.0
```

`apis_override_select2js` is a workaround for APIS' handling of autocomplete
forms. You will need it if you want to use autocomplete. Add it to your
`INSTALLED_APPS` and make sure it is listed at the beginning of the list, to
make sure the files shipped with it are served in precedence.

```python
"apis_override_select2js"
```


You will also need the following dependencies:
```shell
poetry add django-crispy-forms django-filter django-tables2 django-autocomplete-light django-rest-framework drf-spectacular
```
Add them to the `INSTALLED_APPS`:

```python
# ui stuff
"crispy_forms",
"django_filters",
"django_tables2",
"dal",
"dal_select2",

# api
"rest_framework",
"rest_framework.authtoken",

# for swagger ui generation
"drf_spectacular",

```

Now you should be ready to roll. Start creating your entities in you `apis_ontology/models.py`.
218 changes: 0 additions & 218 deletions README.rst

This file was deleted.

0 comments on commit aa91950

Please sign in to comment.