{"id":20635755,"url":"https://github.com/psu-libraries/etda_explore","last_synced_at":"2026-04-12T14:44:34.706Z","repository":{"id":37501003,"uuid":"500557704","full_name":"psu-libraries/etda_explore","owner":"psu-libraries","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-06T22:01:49.000Z","size":289,"stargazers_count":1,"open_issues_count":14,"forks_count":0,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-06T23:19:09.440Z","etag":null,"topics":["ruby","ruby-on-rails"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/psu-libraries.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-06T18:56:42.000Z","updated_at":"2025-03-06T22:01:52.000Z","dependencies_parsed_at":"2024-03-25T19:47:10.479Z","dependency_job_id":"b1b6e5bc-8840-4f0a-8dfe-3804293d2906","html_url":"https://github.com/psu-libraries/etda_explore","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fetda_explore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fetda_explore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fetda_explore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psu-libraries%2Fetda_explore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/psu-libraries","download_url":"https://codeload.github.com/psu-libraries/etda_explore/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242650955,"owners_count":20163611,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ruby","ruby-on-rails"],"created_at":"2024-11-16T15:07:14.113Z","updated_at":"2026-04-12T14:44:34.693Z","avatar_url":"https://github.com/psu-libraries.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ETDA Explore\n\nETDA (Electronic Theses and Dissertations Application) Explore is a Ruby on Rails web application build on Blacklight that leverages the metadata of released electronic theses and dissertations to permit the search and retrieval of work preserved by the Pennsylvania State University Libraries. ETDA Explore is the discovery portion of the larger ETDA service.  ETDA Workflow (the other portion: https://github.com/psu-libraries/etda_workflow) handles the submission, format review, electronic committee approval, and final submission review for students who author electronic theses and dissertations.  ETDA Workflow allows administrators to review the work and release the documents according to policy and the author's wishes.\n\nThe application is used by each of several different \"partners\". Currently these partners are the Graduate School, the Schreyer Honors College, the Millennium Scholars Program, and The School of Science Engineering and Technology. Each partner has its own instance of the application along with its own database.\n\n### Dependencies\n\n| Software |  Version |\n|----------|------|\n| `ruby`    |  3.4 |\n| `rails`   |  7 |\n| `solr`   |  8 |\n| `mariadb` | 11 |\n\n### Configuration\n\nAll configuration is done via environment variables. The .envrc.example file shows the apps tunables\n```\ncp .envrc.example .envrc\nsource .envrc\n```\n\n### Development Setup\n\nDocker compose is used to setup the mysql and solr instances locally.\n\nFrom the project root directory:\n\nRun the mysql and solr containers:\n\n    docker compose up --build\n\nOmit `--build` if you've already built the images.\n\nRun `bundle install` if gems have not been installed yet.\n\nLoad configset and create a solr collection:\n\n    bundle exec rake solr:init\n\nLoad fixture data into solr:\n\n    bundle exec rake solr:load_fixtures\n\nCreate database and run database migrations:\n\n    bundle exec rake db:create\n    bundle exec rake db:migrate\n\nFinally run the rails server and take a look at the app from the browser at localhost:3000:\n\n    bundle exec rails s\n\nNote: To reset the solr collection and configset run:\n\n    bundle exec rake solr:reset\n\n### Testing\n\nTo run the test suite run:\n\n    RAILS_ENV=test bundle exec rspec\n\nTo run the linter \"niftany\":\n\n    bundle exec niftany\n\n### OAI Endpoint\n\nETDA Explore uses the blacklight_oai_provider gem to generate an OAI-PMH endpoint.  The endpoint can be reached at `/catalog/oai`; it returns XML.\n\nYou can query the endpoint by date range with the following query pattern:\n\n    ?verb=ListRecords\u0026from=2021-01-01\u0026until=2021-05-29\u0026metadataPrefix=oai_dc\n\n\n### Deployment\n\nTo deploy a preview, prepend your branch name with `preview/` like so: `preview/your-branch-name`.  A preview will deploy when you push this branch to GitHub.\n\nAny PRs merged to main will automatically be deployed to QA.\n\nTo initiate a production deploy, create a new release.  Then, merge the automatically created PR in the config repo: https://github.com/psu-libraries/etda-config\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsu-libraries%2Fetda_explore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpsu-libraries%2Fetda_explore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsu-libraries%2Fetda_explore/lists"}