Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
dcnb authored Jun 18, 2024
0 parents commit cab9675
Show file tree
Hide file tree
Showing 1,959 changed files with 17,619 additions and 0 deletions.
35 changes: 35 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: 🐞 Bug
description: File a bug/issue
title: '<title>'
labels: [bug]
body:
- type: textarea
attributes:
label: Current Behavior
description: A description of what you're experiencing.
validations:
required: false
- type: textarea
attributes:
label: Steps To Reproduce
description: Link to a repository with steps to reproduce the behavior.
placeholder: |
As you can see in this code example/repository
1. Using this component...
2. With these properties...
3. Click '...'
4. See error...
validations:
required: false
- type: markdown
attributes:
value: |
Bug Reports with a link to a repository or specific example can be answered far quicker, so please consider including as much information as possible!
- type: textarea
attributes:
label: Anything else?
description: |
Links? References? Anything that will give us more context about the issue you are encountering!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
11 changes: 11 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
blank_issues_enabled: true
contact_links:
- name: CollectionBuilder Documentation
url: https://collectionbuilder.github.io/cb-docs/
about: Learn more about CollectionBuilder and how to use it.
- name: CollectionBuilder Discussions
url: https://github.com/orgs/CollectionBuilder/discussions
about: Ask questions, provide feedback, post ideas, and share with the CollectionBuilder community. This is the best place to get help!
- name: CollectionBuilder Community
url: https://collectionbuilder.github.io/community/
about: Join the CollectionBuilder community and contribute to the project.
23 changes: 23 additions & 0 deletions .github/ISSUE_TEMPLATE/docs_issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: 📗 Report Docs Issue
description: See a typo? Outdated or incorrect information? Let us know!
title: '<title>'
labels: [documentation]
body:
- type: markdown
attributes:
value: Sometimes something slips through the cracks, and the documentation is not quite right. Thanks for letting us know!
- type: input
id: link
attributes:
label: Link to the Page
- type: textarea
id: quote
attributes:
label: Describe the Issue
- type: dropdown
id: participate
attributes:
label: Are you able to create a Pull Request with the fix?
options:
- 'Yes'
- 'No'
22 changes: 22 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: 🛠️ Request New Feature
description: Let us know what we should add.
labels: ['feature request']
body:
- type: textarea
id: description
attributes:
label: Describe what feature you'd like. Pseudo-code, mockups, or screenshots of similar solutions are encouraged!
- type: dropdown
id: category
attributes:
label: What type of pull request would this be?
options:
- 'New Feature'
- 'Enhancement'
- 'Guide'
- 'Docs'
- 'Other'
- type: textarea
id: references
attributes:
label: Any links to similar examples or other references we should review?
22 changes: 22 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Pull request

## Proposed changes

<!-- Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue. -->

## Types of changes

<!-- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->

- [ ] New feature (non-breaking change which adds functionality).
- [ ] Enhancement (non-breaking change which enhances functionality)
- [ ] Bug Fix (non-breaking change which fixes an issue).
- [ ] Breaking change (fix or feature that would cause existing functionality to change).

## Checklist

<!-- Go over all the following points, and put an `x` in all the boxes that apply. If you're unsure about any of these, don't hesitate to ask. We're here to help! -->

- [ ] I have read the **[CONTRIBUTING](./CONTRIBUTING.md)** document.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
64 changes: 64 additions & 0 deletions .github/workflows/jekyll.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# Sample workflow for building and deploying a Jekyll site to GitHub Pages
name: Deploy Jekyll site to Pages

on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write

# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false

jobs:
# Build job
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0
with:
ruby-version: '3.1' # Not needed with a .ruby-version file
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
cache-version: 0 # Increment this number if you need to re-download cached gems
- name: Setup Pages
id: pages
uses: actions/configure-pages@v4
- name: Build with Jekyll
# Outputs to the './_site' directory by default
run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
env:
JEKYLL_ENV: production
- name: Upload artifact
# Automatically uploads an artifact from the './_site' directory by default
uses: actions/upload-pages-artifact@v3

# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
19 changes: 19 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Ignore metadata generated by Jekyll
_site/
.sass-cache/
.jekyll-cache/
.jekyll-metadata

# Ignore folders generated by Bundler
.bundle/
vendor/

# Ignore mac files
.DS_Store

# temporarily ignore gemfile.lock
Gemfile.lock

# Ignore objects directory to avoid committing binary files (other than demo files)
# if you would like to commit your objects to github, delete the line below!
objects/
22 changes: 22 additions & 0 deletions 404.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: Page Not Found
layout: page
permalink: /404.html
# this creates a 404 page automatically handled by GitHub Pages
# the cow is from the linux program "cowsay"
---

<h1>404?</h1>
<p>Sorry, but the page you were trying to view does not exist.</p>

<pre><code>
____________
< Sorry, 404 >
------------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||

</code></pre>
25 changes: 25 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
title: "CollectionBuilder-CSV"
type: software
authors:
- family-names: Williamson
given-names: Evan Peter
orcid: https://orcid.org/0000-0002-7990-9924
- family-names: Becker
given-names: Devin
orcid: https://orcid.org/0000-0002-0974-9064
- family-names: Wikle
given-names: Olivia
orcid: https://orcid.org/0000-0001-8122-4169
repository-code: 'https://github.com/CollectionBuilder/collectionbuilder-csv'
url: 'https://collectionbuilder.github.io/'
license: MIT
version: 1+
date-released: '2021-04-25'
abstract: >-
CollectionBuilder is an open source tool for
creating digital collection and exhibit websites
that are driven by metadata and powered by modern
static web technology.
license: MIT
76 changes: 76 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Code of Conduct

## Our Pledge

A primary goal of the CollectionBuilder community is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As community participants, we pledge to make participation in our project and community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.

We invite all those who participate in the CollectionBuilder project and community to help us create safe and positive experiences for everyone.

## Scope

This code of conduct outlines our expectations for everyone who participates in our community, as well as the consequences for unacceptable behavior.

We expect all community participants (community organizers; project maintainers; contributors, paid or otherwise; sponsors; and others) to abide by this Code of Conduct, which applies in all community venues, online and in-person; in one-on-one or group communications pertaining to community business; and within project spaces and in public spaces when an individual is representing the project or its community.
Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event.
Representation of a project may be further defined and clarified by community organizers.

Participants are also expected to uphold the [GitHub Community Guidelines](https://help.github.com/en/articles/github-community-guidelines) for all behavior and content on the platform.

## Expected Behavior

The following behaviors are expected of all community participants:

- Using inclusive, respectful, and welcoming language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members

## Unacceptable Behavior

The following behaviors are unacceptable within our community:

- Violence, threats of violence, or violent language directed against another person
- Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language
- Trolling, insulting/derogatory comments, and personal or political attacks
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Posting or displaying sexually explicit or violent material
- Publishing or threatening to publish others' private information, such as a physical or electronic address, without explicit permission ("doxing")
- Public or private harassment
- Other conduct which could reasonably be considered inappropriate in a professional setting

## Our Responsibilities

Community organizers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.

## Consequences for Unacceptable Behavior

Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated.

Anyone asked to stop unacceptable behavior is expected to comply immediately.

Community organizers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban (temporarily or permanently) any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful without warning (and without refund in the case of a paid event).

## Reporting Guidelines

If you are subject to or witness unacceptable behavior, or have any other concerns, please notify community organizers as soon as possible at [email protected] which is maintained by evanwill, dcnb, owikle, and juliastone0729.
If these are not appropriate contacts, please consider [reporting directly to GitHub](https://github.com/contact/report-abuse) or an administrative contact in the project's home at [University of Idaho Library](https://www.lib.uidaho.edu/about/directory.html).

All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances.
Community organizers are obligated to uphold confidentiality with regard to the reporter of an incident.

Additionally, any abuse, harassment, and other harmful behavior taking place on GitHub can be reported directly:
https://github.com/contact/report-abuse

## Contact info

- email: [email protected]
- [CollectionBuilder GitHub organization](https://github.com/CollectionBuilder)
- [CollectionBuilder home page](https://collectionbuilder.github.io/)

## Attribution

This Code of Conduct is adapted from two sources:

1. The [Contributor Covenant](https://www.contributor-covenant.org/), version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html. For answers to common questions about this code of conduct, see https://www.contributor-covenant.org/faq.
2. The Citizen Code of Conduct, Revision 2.3 2017, which is distributed by [Stumptown Syndicate](http://stumptownsyndicate.org/) under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/). Portions of text from the Citizen Code of Conduct are derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy).
52 changes: 52 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# How to Contribute to CollectionBuilder

Thank you for contributing to CollectionBuilder!

CollectionBuilder prioritizes pragmatic, sustainable, and simplified approaches to infrastructure to ensure the tool is "do-able" and approachable for digital knowledge workers in libraries and museums, empowering them to take control of their web systems.
The core team is *not* full time developers--we are librarians.
Thus, we are focused on creating a supportive, inclusive community with low barriers to contributing (please see our [Code of Conduct](https://github.com/CollectionBuilder/collectionbuilder-csv/blob/main/CODE_OF_CONDUCT.md)).

Honestly, we do a lot of stuff the slow/old/inefficient/wrong way... but we make it work and invite you to learn/teach with us!

## Project resources

- Email contact: <[email protected]>
- [Main project site](https://collectionbuilder.github.io/)
- [User Documentation - CB-Docs](https://collectionbuilder.github.io/cb-docs/)
- Technical Documentation is found in individual project repositories in the "/docs" folder.
- General project tracking takes place in Issues in individual template repositories, or the [CollectionBuilder home repository](https://github.com/CollectionBuilder/collectionbuilder.github.io/issues)
- [CollectionBuilder Discussions](https://github.com/orgs/CollectionBuilder/discussions)

## Issues

Since this is a relatively small project, we are informal in using GitHub Issues and welcome you to open one to get in touch.
Issues should be opened in the repository of the specific template you are using for bug reports, feature ideas, and requests for missing documentation.
The team also uses Issues for project management related to the CollectionBuilder project.

For questions related to your own project using a CB template, it is best to ask for help in the main [CollectionBuilder Discussions form](https://github.com/orgs/CollectionBuilder/discussions) rather than opening an Issue.

Here are some tips:

- [How to use GitHub Issues](https://guides.github.com/features/issues/)
- Please focus on clear communication, providing plenty of detail and links so that we can understand the bug or proposal.
- Search the Issues to see if a related report has already been opened (if so add a comment or reaction!).
- Check our [documentation](https://collectionbuilder.github.io/cb-docs/) resources for solutions and other ways to get in touch.
- You can more informally ask questions and share ideas in the main [CollectionBuilder Discussions forum](https://github.com/orgs/CollectionBuilder/discussions). Discussions is often the best place to post questions about debugging metadata or pages in your own projects (rather than issues with the template code).

## Pull Requests

CollectionBuilder welcomes [Pull Requests](https://help.github.com/en/articles/about-pull-requests) from outside contributors.
Please provide plenty of detail in the PR so that the project team fully understands your contribution.

- [How to create a PR](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request)

## Conventions

- Include lots of inline comments documenting code! The entire CollectionBuilder project has a educational outlook.
- Keep code structure *relatively* simple. The templates are intended to be comprehensible for digital librarians and DH practitioners to use and modify, not necessarily fully optimized solutions.
- Include spaces for readability. For example, in Liquid `{% if site.example %}{{ site.example }}{% endif %}`, not `{%if site.example%}{{site.example}}{%endif%}`.
- To improve readability, avoid excess white space and random indentations.
- Indent using spaces. HTML, JS, CSS and related files should be indented using 4 spaces. YAML with 2 spaces.
- Use `;` in metadata to denote multi-valued fields.
- New features should be progressive--adding features, while maintaining backwards compatibility with existing data setups. If possible, sane defaults should be set in Liquid and JS, so that projects lacking updated config variables will still function.
- Main branch should be code that is ready to go. Use feature branches for development and provide meaningful commit messages.
14 changes: 14 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# frozen_string_literal: true

source 'https://rubygems.org'

unless Gem.win_platform?
gem 'image_optim'
gem 'image_optim_pack'
end
gem 'csv'
gem 'jekyll'
gem 'mini_magick'
gem 'rake'

gem 'webrick', '~> 1.7'
Loading

0 comments on commit cab9675

Please sign in to comment.