Arches is a new, open-source, web-based, geospatial information system for cultural heritage inventory and management. Arches is purpose-built for the international cultural heritage field, and it is designed to record all types of immovable heritage, including archaeological sites, buildings and other historic structures, landscapes, and heritage ensembles or districts.
Please see the project page for more information on the Arches project.
The Arches Installation Guide and Arches User Guide are available here.
Coral is a project made for the Historic Environment Division (HED) of the The Historic Environment Record of Northern Ireland (HERoNI).
The HED records, protects, conserves and promotes Northern Ireland’s historic environment and has gathered a wealth of information for present and future However a lot of data is done using paper forms or with inconsistant data collection methods.
Coral aims to use Arches to collate data in one place for all the teams across the country. Currently, everyone enters data differently and this project is to streamline processes while maintaining shareability of the data.generations to use and enjoy. This information is publicly accessible through HERoNI.
However a lot of data is done using paper forms or with inconsistant data collection methods.
Coral aims to use Arches to collate data in one place for all the teams across the country.
Currently, everyone enters data differently and this project is to streamline processes while maintaining shareability of the data.
The Coral-arches project is actually a project that comprised of 2 sub-projects, Coral-arches itself and Arches. Most of the controller logics of Coral-arches is actually embedded in Arches. The project linking is built using Docker.
datatypes
Sets up data types that are used in Coralfunctions
Various helper functions that are used throughout the projectinstall
States what are the requirements of the project (currently only Arches)management
Scripts for adding permissionsmedia
The logic of the project is here. The JS files are added through webpack with Archestemplates
The view of the project. Contains the HTML files used to render the project in the browser
├── coral
│ ├── celery.py
│ ├── datatypes
│ ├── functions
│ ├── __init__.py
│ ├── install
│ ├── logs
│ ├── management
│ ├── media
│ ├── package.json
│ ├── permissions
│ ├── pkg
│ ├── plugins
│ ├── __pycache__
│ ├── reports
│ ├── search_components
│ ├── search_indexes
│ ├── settings_local.py
│ ├── settings.py
│ ├── system_settings
│ ├── templates
│ ├── uploadedfiles
│ ├── urls.py
│ ├── utils
│ ├── views
│ ├── webpack
│ ├── widgets
│ ├── wsgi.py
│ └── yarn.lock
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
Docker Engine: Docker version 25.0.0
Docker-compose standalone: v2.24.2
Python3 venv
The installation guide for the dockers are here:
Both docker and docker-compose must be able to be run without sudo. It is possible to check it by running this commands seperately
docker-compose -v
docker -v
docker run hello-world
In case docker compose requires sudo, run this command (a restart is required afterward!)
sudo chmod a+x /usr/local/bin/docker-compose
If there is no python virtual environment installed in your machine, use this command to install python venv
sudo apt install python3.10-venv
To get started with the coral-arches main branch you need to follow the following step:
- Clone the repository by running the following command in your terminal:
git clone <https://github.com/flaxandteal/coral-arches/tree/main>
This will clone the repository into your local machine. A good practice to not bloat your global environment is in the next step:
- a. Use Python Virtual Environment
python3 -m venv coral-python
- b. Activate the virtual environment
source /coral-python/bin/activate
- Once the repository is cloned, navigate to the project root folder. Run the following command to initialize and update the submodules:
cd coral-arches
git submodule update --init --recursive
It will download the submodules needed to run the build file.
- The final step will be building up the whole project using the makefile in the root folder, using this command:
make build
for each time you want to run the project, you can just open it in localhost:8000 after running the script
make run
At first, it is not possible to access the workflows and some other functionalities without setting up the proper permissions. You will need to run these 3 commands in order to set up the whole project properly.
The first two commands imports the resources "Global Set" and "Global Group". It acts as a mock model that acted as a root in a tree-like model of the groups.
make manage CMD="packages -o import_business_data -s coral/pkg/business_data/Root\ Set.json -ow overwrite"
make manage CMD="packages -o import_business_data -s coral/pkg/business_data/Root\ Group.json -ow overwrite"
Initializes the permission table, it allows all of the users within the system to be assigned the proper permissions.
make manage CMD="print_permissions_table"
We welcome contributions! To learn the project in more details, check out the Coral Onboarding Page