Back to home page

EIC code displayed by LXR

 
 

    


Warning, /epic.github.io/_collaboration/collaborative_tools.md is written in an unsupported language. File is not indexed.

0001 ---
0002 title: Collaborative Tools
0003 name: collaborative_tools
0004 layout: default
0005 ---
0006 
0007 {% include layouts/title.md %}
0008 
0009 #### Overview
0010 
0011 * Web  presence: the ePIC Collaboration is currently using [a Wiki-based website](https://wiki.bnl.gov/EPIC/index.php?title=Main_Page){:target="_blank"}
0012 as its information portal. Migration to this website (__www.epic-eic.org__) is work in progress. See sections below for technical information.
0013 * For meetings and agendas, there is a dedicated [ePIC Indico area](https://indico.bnl.gov/category/402/){:target="_blank"} hosted at BNL.
0014 * There is an extensive set of ePIC-related mailing lists hosted at BNL. For more information about access please contact the corresponding
0015 working group convener or a member of the leadership team.
0016 * Document management: the ePIC Collaboration is actively maintaining its
0017 [community within Zenodo (a repository hosted at CERN)](https://zenodo.org/communities/epic/){:target="_blank"}, which serves
0018 as the platform for collaborative review process, storage and management of reasearch materials. To gain access to the protected
0019 portion of the ePIC materials, please see intructions on the [document database page]({{ '/documents/zenodo.html' | relative_url }}){:target="_blank"}
0020 
0021 {{ site.hr }}
0022 
0023 #### About this website
0024 
0025 ##### Jekyll and Markdown
0026 
0027 We leverage a very popular and efficient _static website generator_ technology which is widely used in industry and research: [Jekyll](https://jekyllrb.com/){:target="_blank"}.
0028 If you are familiar with GitHub you've probably encountered this before, since it's used in rendering of the optional _README.md_ files
0029 in repositories and also as the main engine behind the _GitHub Pages_ platform.
0030 
0031 It allows the contributors to use the easy-to-read [Markdown](https://www.markdownguide.org/){:target="_blank"}
0032 annotation, which is then automatically, and transparently for the user, converted into HTML. This way
0033 the cumbersome HTML editing as avoided. A simple example of the Markdown text such as used on this page
0034 may look like this:
0035 
0036 ```markdown
0037 External links: [Markdown](https://www.markdownguide.org/){:target="_blank"}
0038 
0039 Itemized list:
0040 * __item 1__ in bold
0041 * _item 2_ in italics
0042 ```
0043 ...which is rendered as:
0044 
0045 ---
0046 
0047 External links: [Markdown](https://www.markdownguide.org/){:target="_blank"}
0048 
0049 Itemized list:
0050 * __item 1__ in bold
0051 * _item 2_ in italics
0052 
0053 
0054 {{ site.hr }}
0055 
0056 ##### Data
0057 
0058 Data content is handled in a way that effectively serves as a database (when the static website is compiled), without the need to deploy an
0059 actual database server. This is achieved by storing the site data (when needed) in YAML-formatted or CSV files, which can be queried, parsed
0060 and processed parsed using the powerful [Liquid](https://shopify.github.io/liquid){:target="_blank"} language.
0061 
0062 ##### Working on the content
0063 
0064 The most optimal setup for the content development is to install Jekyll on your machine using the information
0065 contained in the Jekyll link above. This requires a modicum of effort but is certainly not too difficult. It is
0066 also possible to edit the material directly on _GitHub_ (see the section below) using the state-of-the-art
0067 editor -- __VScode__. It is imperative that such direct edits, if they are necessary, are done in your own branch
0068 (as opposed to "main") so as to not accidentally damage the ePIC website by making unintended or invalid changes.
0069 
0070 ##### GitHub: Managing the Content and Serving the Content
0071 
0072 We use a [GitHub repository](https://github.com/eic/www.epic-eic.org){:target="_blank"} to manage the code for this site.
0073 Basic git/GitHub literacy is very helpful for efficient participation in the development of this site's content. In terms
0074 of getting your new or updated content into the repo, the branch/pull request (PR) process is optimal.To get access to the code,
0075 create a clone of the website repository and move to the directory created:
0076 
0077 ```bash
0078 git clone git@github.com:eic/www.epic-eic.org.git
0079 cd www.epic-eic.org
0080 ```
0081 
0082 You should be able to create your own branch using the GitHub web interface, it's fairly straightforward. Then,
0083 you can use a command line like the one below, to create a working copy of the branch on your workstation or
0084 laptop:
0085 
0086 ```bash
0087 git checkout my_cool_branch
0088 ```
0089 
0090 After you commit the updated material to your branch and push it to GitHub, you will probably want to create
0091 a "pull request", which will prompt the administrators of this site to review your commits and merge them
0092 into main. After that the updated material will be rendered on the webpage. This is achieved by using the mechanism
0093 of ''GitHub Pages'', which is a free service provided by GitHub and which automaticall renders the site
0094 at the url: [https://eic.github.io/epic.github.io/](https://eic.github.io/epic.github.io/){:target="_blank"}
0095 
0096 ##### Documents, Images, Data
0097 
0098 The ePIC Collaboration is leveraging [Zenodo](https://zenodo.org/communities/epic/){:target="_blank"} to systematize and
0099 index a variety of its research documents in any format. This is the preferred method of publishing materials either in their
0100 final shape, or approaching the final shape, for the collaboraiton. Storage of images, PDF and other files directly in repository
0101 of this website (www.epic-eic.org) is __strongly discouraged__ due to GitHub features and limitations, and
0102 other factors. Links to Zenodo, Google Drive, Dropbox or other such cloud media should be used instead.