Download the arches-lingo repo:
a. If using the Github CLI: gh repo clone archesproject/arches-lingo
b. If not using the Github CLI: git clone https://github.com/archesproject/arches-lingo.git
Download the arches package:
a. If using the Github CLI: gh repo clone archesproject/arches
b. If not using the Github CLI: git clone https://github.com/archesproject/arches.git
Create a virtual environment outside of both repositories:
python3 -m venv ENV
Activate the virtual enviroment in your terminal:
source ENV/bin/activate
Navigate to the arches-lingo
directory, and install the project (with development dependencies):
cd arches-lingo
pip install -e '.[dev]'
Also install core arches for local development:
pip install -e ../arches
Run the Django server:
python manage.py runserver
OPEN A NEW TERMINAL WINDOW, the following step will take place in a new terminal window while the python server is running.
Ensure this new terminal window has the virtual environment activated.
source ENV/bin/activate
(From the arches-lingo
top-level directory) install the frontend dependencies:
npm install
Once the dependencies have been installed, generate the static asset bundle:
a. If you're planning on editing HTML/CSS/JavaScript files, run npm start
. This will start a development server that will automatically detect changes to static assets and rebuild the bundle.
b. If you're not planning on editing HTML/CSS/JavaScript files, run npm run build_development
If you ran npm start
in the previous step, you will need to open a new terminal window and activate the virtual environment in the new terminal window. If you ran npm run build_development
then you can skip this step.
Install the ontologies, branches, and resource models from the package.
python manage.py setup_db
python manage.py packages -o load_package -a arches_lingo --yes -db
Load the test data:
python manage.py packages -o import_business_data -s tests/fixtures/data/aat_entries_scheme_examples.json -ow overwrite
python manage.py packages -o import_business_data -s tests/fixtures/data/aat_entries_concept_examples.json -ow overwrite
In the terminal window that is running the Django server, halt the server and restart it.
(ctrl+c to halt the server)
python manage.py runserver
NOTE: Changes are committed to the arches-lingo repository.
Navigate to the repository
cd arches-lingo
Cut a new git branch
git checkout origin/main -b my-descriptive-branch-name
If updating models or branches
Manually export the model or branch from the project
Manually move the exported model or branch into one of the subdirectories in the arches-lingo/arches_lingo/pkg/graphs
directory.
Add your changes to the current git commit
git status
git add -- path/to/file path/to/second/file
git commit -m "Descriptive commit message"
Update the remote repository with your commits:
git push origin HEAD
Navigate to https://github.com/archesproject/arches-lingo/pulls to see and commit the pull request