chronicles-client
Chronicles Projects @ Boston College - Client Interface
Science Score: 52.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
✓Institutional organization owner
Organization bcdigschol has institutional domain (ds.bc.edu) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.6%) to scientific vocabulary
Repository
Chronicles Projects @ Boston College - Client Interface
Basic Info
- Host: GitHub
- Owner: BCDigSchol
- License: other
- Language: TypeScript
- Default Branch: main
- Size: 316 KB
Statistics
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
chronicles-client
Chronicles Projects @ Boston College - Client Interface
- Maia McAleavey, Principal Investigator
- Anastasia Prussakova, Research Assistant
- David J. Thomas, Developer
- Ashlyn Stewart, Project Manager
Full Stack (MySQL ExpressJS Angular NodeJS) app for browsing the proceedings of conferences in Medieval Studies.
Installation
Current installation is on a Docker setup.
Install docker, and docker-compose locally. Then clone this repo and move inside the directory.
sh
git clone https://github.com/BCDigSchol/chronicles-client.git
cd chronicles-client
Thenm, modify the following files with your desired accounts/passwords/ports
``` sh
you must change the server_name and redirect to have the url to which you are deploying
sudo nano nginx/conf/default.conf
client angular settings file MUST contain the IP of the backend
sudo nano src/app/app.settings.ts
the docker config file MUST contain your domain main in the certbot command line
sudo nano docker-compose.yml ```
Run docker compose up -d.
Now, bring the containers down with docker compose down. Then edit the /nginx/conf/default.conf file and uncomment out the lower server block to enable HTTPS traffic. Make sure to replace the server_name with your relevant URLs. Then, bring the containers back up with docker compose up -d.
Finally, set the certbot to autorenew.
sh
docker compose run --rm certbot renew
Now uncomment out the second server block code in /nginx/conf/default.conf. Make SURE to put your URL in each relevant spot or the server will not boot correctly.
Finally, restart the server!
sh
docker compose restart
If you have problems and the docker container keeps restarting, the certbot might not have run correctly. To fix this, first, bring down the container with docker compose down. Then, re-comment out the SSH lines in your nginx/nginx.conf file. Now, bring the image back up with docker compose up -d. Then run the command docker compose run --rm certbot certonly --webroot --webroot-path /var/www/certbot/ --email sample@your_domain --agree-tos --no-eff-email -d your_domain -d www.your_domain. Once it is complete, un-comment out the nginx/nginx.conf file and docker compose up -d to get it started.
Develop Locally
If you want to develop locally, you can ignore the docker instructions for the client. First, make sure to set up the server for local development. Once it is started, make sure that your settings in src/app/app.settings.ts points to the local instance. If you use the server's default values, this should already be the case. Then, run ng serve inside the src directory to run the client locally on port 4200.
Test
To run tests, make sure you are in the src directory. Then run ng test.
Customization
How to Change Site Title/Byline
Edit the src/app.settings.ts file to change any desired display or site information.
How to Change the Fonts
Go to fonts.google.com and select two fonts, one for headers and one for body text. Once you have selected two styles, look under the "Use on the Web" pane in the bottom right. Click the @import option and copy the code BETWEEN the two <style> tags (but don't copy the style tags themselves). Then, go to src/styles.scss and REPLACE the previous line with the new statement (just below where it says 'import google fonts').
Then, at the end of src/styles-settings.scss, replate the names of the header/body fonts with your new fonts.
How to Change the Landing Page
Unfortunately, the landing page does take a little knowledge of Angular to edit. But, you might be able to figure your way around the templates. The files are all located in the src/components/home folder and its subdirectories.
Owner
- Name: Digital Scholarship@Boston College Libraries
- Login: BCDigSchol
- Kind: organization
- Email: digschol-ggroup@bc.edu
- Website: http://ds.bc.edu
- Repositories: 19
- Profile: https://github.com/BCDigSchol
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: McAleavey
given-names: Maia
orcid: https://orcid.org/0009-0003-5419-1922
- family-names: Thomas
given-names: David
orcid: https://orcid.org/0000-0001-5494-6297
- family-names: Stewart
given-names: Ashlyn
orcid: https://orcid.org/0009-0003-7151-9678
title: "Chronicles - Client"
abstract: "Chronicles - Client"
version: 0.0.1
date-released: "2023-10-5"
license: "CC-BY-NC-SA-4.0"
repository-code: "https://github.com/BCDigSchol/chronicles-client"
GitHub Events
Total
- Push event: 1
- Public event: 1
Last Year
- Push event: 1
- Public event: 1
Dependencies
- certbot/certbot latest
- nginx alpine build
- node 18-alpine build
- 960 dependencies
- @angular-devkit/build-angular ^16.2.5 development
- @angular/cli ^16.2.5 development
- @angular/compiler-cli ^16.2.0 development
- @types/jasmine ~4.3.0 development
- autoprefixer ^10.4.16 development
- jasmine-core ~4.6.0 development
- karma ~6.4.0 development
- karma-chrome-launcher ~3.2.0 development
- karma-coverage ~2.2.0 development
- karma-jasmine ~5.1.0 development
- karma-jasmine-html-reporter ~2.1.0 development
- postcss ^8.4.31 development
- tailwindcss ^3.3.3 development
- typescript ~5.1.3 development
- @angular/animations ^16.2.0
- @angular/cdk ^16.2.8
- @angular/common ^16.2.0
- @angular/compiler ^16.2.0
- @angular/core ^16.2.0
- @angular/forms ^16.2.0
- @angular/material ^16.2.8
- @angular/platform-browser ^16.2.0
- @angular/platform-browser-dynamic ^16.2.0
- @angular/router ^16.2.0
- rxjs ~7.8.0
- tslib ^2.3.0
- zone.js ~0.13.0