infra-finder

Infra Finder - Helping you navigate the complex landscape of infrastructure services and standards enabling open research and scholarship.

https://github.com/investinopen/infra-finder

Science Score: 44.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
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Infra Finder - Helping you navigate the complex landscape of infrastructure services and standards enabling open research and scholarship.

Basic Info
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created about 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Funding License Citation

README.md

README

IOI Infra Finder.

Setting up for local development

Ensure you have docker, docker-compose, and docker-sync (gem install docker-sync) installed.

Credentials

If you are developing the core application, copy the master key from the 1Password and put it in place: pbpaste > config/master.key. If you are running this in your own environment, you will need to fork and generate your own credentials for development, staging, and production:

```bash rm config/credentials.yml.enc config/credentials/{staging,production}.yml.enc

bin/rails credentials:edit # for dev credentials, only secretkeybase needs to be set bin/rails credentials:edit --environment staging bin/rails credentials:edit --environment production ```

Starting

docker-sync must always be running in order to have changes persist between your host and the docker container.

```bash docker-sync start

Now launch / build the containers.

docker-compose up -d ```

This will automatically run migrations and seed the database with migrations, seeds, etc.

Setting up your admin account

You can launch a console inside the docker environment via bin/console. To make a new user for dev, launch one and:

ruby user = InfraFinder::Container["testing.add_super_admin"].("youremail@investinopen.org", "Your Name").value!;

The randomly-generated password will get printed to the console. You can then sign in by going to the admin section.

Local Usage

Accessing the local site

The frontend is available at http://localhost:6856.

Accessing Mailcatcher

All mail sent in a local environment is sent to the mailcatcher container.

You can browse those messages here: http://localhost:6857/.

Changing ruby gems

Modify the Gemfile and run docker-compose exec web bundle as needed.

Changing node.js packages

Run docker-compose exec web yarn add PACKAGEHERE.

Note: Do not run yarn on your local machine. It needs to happen in Docker. node_modules is not and cannot be shared between the two environments.

Adding more view components

To add a view component, use the Rails generator. From your local machine:

bash docker-compose exec web bin/rails g component ComponentName --stimulus

The ComponentName should be something like FooBar in pascal case, and it will generate a component named FooBarComponent with its associated sidecar directory app/components/foo_bar_component. The --stimulus option is necessary to make sure that the generated HTML template is wired up to the component's specific Stimulus controller correctly. After you've done that, you can generate a colocated CSS file and have it automatically be included in the CSS manifest by running the following:

bash docker-compose exec web bin/rails view_component:assets:regenerate

Owner

  • Name: Invest in Open Infrastructure
  • Login: investinopen
  • Kind: organization
  • Email: contact@investinopen.org

Working to improve funding and resourcing for the open technology research relies on.

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Infra Finder
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - name: Invest in Open Infrastructure
    country: US
    email: infra-finder@investinopen.org
    website: 'https://investinopen.org'
url: 'https://infrafinder.investinopen.org'
abstract: Source code for the Infra Finder application.
license: MIT

GitHub Events

Total
  • Delete event: 1
  • Push event: 3
  • Pull request review event: 1
  • Pull request event: 4
  • Create event: 1
Last Year
  • Delete event: 1
  • Push event: 3
  • Pull request review event: 1
  • Pull request event: 4
  • Create event: 1

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v1 composite
  • actions/setup-node v4 composite
  • ruby/setup-ruby v1 composite
  • postgres 15.5-alpine docker
  • redis * docker
.github/workflows/docker.yml actions
  • actions/checkout v4 composite
  • digitalocean/action-doctl v2 composite
  • docker/build-push-action v5 composite
  • docker/metadata-action v5 composite
  • docker/setup-buildx-action v3 composite
  • docker/setup-qemu-action v3 composite
Dockerfile docker
  • ruby 3.2.3-bullseye build
docker/production/Dockerfile docker
  • ruby 3.2.3-bullseye build
docker-compose.yml docker
  • bitnami/redis 6.2.7-debian-10-r34
  • minio/mc RELEASE.2022-09-16T09-16-47Z
  • minio/minio RELEASE.2022-09-25T15-44-53Z
  • nginx 1.19.2-alpine
  • postgres 15.5-alpine
  • sj26/mailcatcher v0.8.2
package.json npm
  • @castiron/style-mixins ^2.0.0 development
  • @tailwindcss/aspect-ratio ^0.4.2 development
  • @tailwindcss/container-queries ^0.1.1 development
  • @tailwindcss/forms ^0.5.7 development
  • @tailwindcss/typography ^0.5.10 development
  • postcss-import ^16.0.1 development
  • postcss-mixins ^10.0.0 development
  • @activeadmin/activeadmin ^3.2.0
  • @hotwired/stimulus ^3.2.2
  • @hotwired/turbo ^8.0.3
  • @hotwired/turbo-rails ^8.0.3
  • @rails/ujs 7.1.3-2
  • autoprefixer ^10.4.18
  • esbuild ^0.20.1
  • jquery ^3.7.1
  • jquery-ui-bundle 1.12.1-migrate
  • npm-run-all ^4.1.5
  • postcss ^8.4.35
  • postcss-cli ^11.0.0
  • postcss-import ^16.0.1
  • postcss-nesting ^12.1.0
  • sass ^1.71.0
  • tailwindcss ^3.4.1
yarn.lock npm
  • 344 dependencies
Gemfile rubygems
  • database_cleaner-active_record ~> 2.1.0 development
  • database_cleaner-redis ~> 2.0.0 development
  • erb_lint ~> 0.5.0 development
  • factory_bot_rails ~> 6.2.0 development
  • faker ~> 3.2.3 development
  • pundit-matchers ~> 3.1.2 development
  • rspec ~> 3.13.0 development
  • rspec-collection_matchers ~> 1.2.0 development
  • rspec-json_expectations ~> 2.2.0 development
  • rspec-rails ~> 6.1.1 development
  • rubocop = 1.56.4 development
  • rubocop-rails = 2.24.0 development
  • rubocop-rspec = 2.24.1 development
  • ruby-prof ~> 1.6.3 development
  • simplecov ~> 0.22.0 development
  • stackprof ~> 0.2.25 development
  • test-prof ~> 1.2.3 development
  • timecop ~> 0.9.8 development
  • web-console >= 0 development
  • webmock = 3.19.1 development
  • yard ~> 0.9.34 development
  • yard-activerecord ~> 0.0.16 development
  • yard-activesupport-concern ~> 0.0.1 development
  • absolute_time ~> 1.0.0
  • active_link_to ~> 1.0.5
  • active_record_distinct_on ~> 1.6.0
  • active_snapshot ~> 0.3.2
  • activeadmin ~> 3.2.0
  • activerecord-cte ~> 0.3.0
  • acts-as-taggable-on ~> 10.0
  • acts_as_list ~> 1.1.0
  • addressable >= 2.8.0
  • after_commit_everywhere ~> 1.3.1
  • anyway_config ~> 2.6.3
  • aws-sdk-s3 ~> 1.136.0
  • bcrypt ~> 3.1.20
  • bootsnap ~> 1.11.1
  • chunky_png ~> 1.4.0
  • closure_tree ~> 7.4.0
  • content_disposition ~> 1.0.0
  • cssbundling-rails >= 0
  • csv ~> 3.2.8
  • devise ~> 4.9.3
  • dry-auto_inject ~> 1.0.1
  • dry-container ~> 0.11.0
  • dry-core ~> 1.0.0
  • dry-effects ~> 0.4.1
  • dry-files ~> 0.1.0
  • dry-initializer ~> 3.1.1
  • dry-matcher ~> 1.0.0
  • dry-monads ~> 1.6.0
  • dry-rails ~> 0.7.0
  • dry-schema ~> 1.13.0
  • dry-struct ~> 1.6.0
  • dry-system ~> 1.0.1
  • dry-transformer ~> 1.0
  • dry-types ~> 1.7.1
  • dry-validation ~> 1.10.0
  • fastimage ~> 2.2.6
  • ffi ~> 1.16.3
  • friendly_id ~> 5.5.1
  • frozen_record ~> 0.27.1
  • good_job ~> 3.26.2
  • groupdate ~> 6.2.1
  • heroicon ~> 1.0.0
  • image_processing ~> 1.12.2
  • job-iteration ~> 1.4.1
  • jsbundling-rails >= 0
  • marcel ~> 1.0.2
  • mediainfo ~> 1.5.0
  • nokogiri ~> 1.16.2
  • oj ~> 3.16.1
  • pg ~> 1.5.4
  • pg_query ~> 5.1.0
  • pg_search ~> 2.3.6
  • postgresql_cursor ~> 0.6.8
  • propshaft >= 0
  • pry-rails ~> 0.3.9
  • puma ~> 6.4.2
  • pundit ~> 2.2.0
  • rack-cors ~> 2.0.1
  • rails ~> 7.1.3
  • redis ~> 5.1.0
  • redis-actionpack ~> 5.4.0
  • redis-objects >= 2.0.0.beta
  • retryable ~> 3.0.5
  • rolify ~> 6.0.1
  • rollbar ~> 3.5.1
  • scenic ~> 1.6.0
  • shrine ~> 3.5.0
  • shrine-tus ~> 2.1.1
  • shrine-url ~> 2.4.1
  • statesman ~> 10.2.3
  • stimulus-rails >= 0
  • store_model ~> 2.1.2
  • strip_attributes = 1.13.0
  • sucker_punch ~> 3.2.0
  • turbo-rails >= 0
  • validate_url ~> 1.0.15
  • view_component ~> 3.11.0
  • zaru ~> 1.0.0
Gemfile.lock rubygems
  • 235 dependencies
.github/workflows/docker-staging.yml actions
  • actions/checkout v4 composite
  • digitalocean/action-doctl v2 composite
  • docker/build-push-action v5 composite
  • docker/metadata-action v5 composite
  • docker/setup-buildx-action v3 composite
  • docker/setup-qemu-action v3 composite