npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

arclight

v1.4.0

Published

The frontend for arclight

Downloads

138

Readme

Gem Version npm version Build Status All Contributors Code Climate Test Coverage

ArcLight

A Rails engine supporting discovery of archival materials, based on Blacklight

Requirements

  • Ruby 3.0.3 or later
  • Rails 7.0 or later
  • Solr 8.1 or later

Installation

Installing ArcLight is straightforward in a Rails environment.

Basically, add this line to your application's Gemfile:

gem 'arclight'

And then execute:

$ bundle

Or install it yourself as:

$ gem install arclight

For further details, see our Installing ArcLight documentation.

Usage

Arclight is a Ruby gem designed to work with archival data. It can be installed on a server or virtual server. Once running, finding aids in the form of archival collection data can be imported into Arclight through an indexing process. Institutional and repositories data can also be added to Arclight (Currently this requires a developer. Configuration pages will be added for this in future versions). Additional finding aids can be added at any time.

After data indexing, Arclight can to be used to search, browse, and display the repositories (sets of collections), collections, and components within collections. Globally available search allows filtering on several types of terms (Keyword, Name, Place, etc.). Once a search is begun, it can be further narrowed using facets on the left side of the search page. Selecting a search result goes directly to that results show or display page. Also global available are buttons for Repositories and Collections which can be used an any time.

Browsing allows you to view the Overview or Contents (when it exists) of a collection. The Overview tab displays top level metadata about the collection. The Contents tab displays an outline view of a next level of the collection. You can expand each level by selecting (clicking). Selecting a component in the Contents views goes to a component page which shows the metadata for it.

Some pages include an inline view tab to the right of an item which will expand the Contents further.

See the ArcLight demo and ArcLight MVP Wiki for usage.

See Arclight Major Features for a list of features.

Traject indexing of EAD content

Traject is a high performance way of transforming documents for indexing into Solr and how ArcLight does indexing. An EAD2 can be indexed by doing the following:

bundle exec traject -u http://127.0.0.1:8983/solr/blacklight-core -i xml -c lib/arclight/traject/ead2_config.rb spec/fixtures/ead/sample/large-components-list.xml

Or

bundle exec rake arclight:seed

Resources

Contributors

See the CONTRIBUTORS file.

Development

ArcLight requires Solr to be running. For development you can start this using solr_wrapper or you may choose to use Docker. Start Solr using Docker by doing docker compose up.

Run the test suite

Ensure Solr and Rails are not running (ports 8983 and 3000 respectively), then:

$ bundle exec rake

If you find that the tests are failing when you run them on a Linux computer, you might need to install Google Chrome so the Selenium testing framework can run properly.

Run a development server

$ bundle exec rake arclight:server

Then visit http://localhost:3000. It will also start a Solr instance on port 8983.

Run a console

You can also run bin/console for an interactive prompt that will allow you to experiment.

Releasing

To release a new gem:

  1. Update the version number in lib/arclight/version.rb
  2. Run bundle exec rake release, which will create a git tag for the version, push git commits and tags, build the gem file (e.g., gem build arclight.gemspec) and push the .gem file to rubygems.org (e.g., gem push arclight-x.y.z.gem).

To release the frontend sources:

When any of the javascript components or SASS sources in the gem are changed, this package should be published to NPM with the following steps:

  1. Install npm
  2. Bump the version number in package.json
  3. run npm run build && npm publish to push the javascript package to https://npmjs.org/package/arclight

Contributing

Bug reports and pull requests are welcome on ArcLight -- see CONTRIBUTING.md for details.

License

The gem is available as open source under the terms of the Apache 2 License.

ArcLight also uses embedded SVG icons from the FontAwesome project. These icons are unmodified and licensed CC BY 4.0. All of these icons have the license and attribution embedded in them.