• This repository has been archived on 13/Jan/2022
  • Stars
    star
    159
  • Rank 235,916 (Top 5 %)
  • Language Vue
  • License
    MIT License
  • Created over 6 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

[PROJECT TRANSFERRED] CC Search is a search tool for CC-licensed and public domain content across the internet.

Project Transferred

This project was transfered to WordPress:

  • WordPress/openverse-frontend: The gateway to the Openverse. Openverse is a search tool for CC-licensed and public domain content across the internet.

For additional context see:


cccatalog-frontend

cccatalog-frontend-ci

CC Search is the official web application for the Creative Commons Catalog API . CC Search is an interface to search for content that is licensed under Creative Commons licenses or marked with public domain tools. This repositiory contains all the front-end code.

The application is avaliable at search.creativecommons.org.

Technology

The frontend app is built using Vue.JS and NuxtJS. You can learn more about the migration to Nuxt.js here.

The user interface is powered by Vocabulary, Creative Common's design system. If you have an issue with colors or a specific ui component, it should probably go in that repository.

Local Development

Run the following commands in order to have the code up and running on your machine:

# installs dependencies
npm install

# Builds and serves assets with hot-reload
npm run dev

Docker setup

Alternatively, you can use Docker to build and run the application. You just have to run:

docker-compose up

You should now have the application running and accessible at http://localhost:8443.

You don't need to have the CC Search API running locally to be able to run the frontend application. It's configured to communicate, by default, with the API that's already publicly available. If you wish, you can change the URL of the API that's used during development by setting the API_URL environment variable.

Running tests

You can run the unit tests by executing:

npm run test

localhost tunneling

If you want to make your local development server accessible to the internet (for testing or showing someone something you're working on), you can use ngrok. Follow the documentation on the ngrok site to install it and set it up. Once you have it installed, get the development server for CC Search running and in a separate window/tab, run:

# The extra parameters are required to ensure that ngrok redirects to the HTTPS version of the site
# and that the host header matches one that is accepted by the server
# (ngrok's default hostname is randomly generated and is not whitelisted).
ngrok http http://localhost:8443 -host-header="localhost:8443"

If you need to run a HTTP version (for example, if you're testing against third-party websites that do not accept the self-signed cerificate generated by the dev server), run the dev server using npm run dev and use the following command to start ngrok:

ngrok http 8443 -host-header="localhost:8443"

Formatting and Linting

The code in this repository is formatted using prettier. If you have prettier setup in your code editor it should work out of the box; otherwise you can use the npm run lintfix script to format and fix lint errors in your code. Checks are run to lint your code and validate the formatting on git precomit using husky.

You will need to fix any linting issues before comitting. We reccommend formatting your JavaScript files on save in your text editor. You can learn how to do this in Visual Studio Code here.

Versioning

CC Search uses CalVer for version numbering, in the YYYY.M.Micro format. This format is intentionally compatiable with NPM's semver parser. Micro is bumped whenever there are multiple releases in a month, for example 2020.07.1 is the first release in July 2020, while 2020.07.2 is the second.

Deployment

Details about how to deploy the frontend code can be found on the CC Wiki (Accessible to CC Staff only).

More Repositories

1

ccsearch-browser-extension

[PROJECT TRANSFERRED] Cross-Browser extension to search, filter and use images in the public domain and under Creative Commons licenses.
JavaScript
117
star
2

cccatalog-api

[PROJECT TRANSFERRED] The Creative Commons Catalog API allows programmatic access to search for CC-licensed and public domain digital media.
Python
98
star
3

vocabulary-legacy

A cohesive design system & Vue component library to unify the web-facing Creative Commons
MDX
87
star
4

garmonbozia

A previous CC search project, see its successor at https://github.com/cc-archive/open-ledger
PHP
59
star
5

cccatalog

[PROJECT TRANSFERRED] Mapping the commons towards an open ledger and cc search.
Python
59
star
6

list

The List powered by Creative Commons allows people to contribute to the public commons by taking photographs of the world around them and sharing these images with the world.
Java
48
star
7

open-ledger

Prototype code and examples for work on the Creative Commons "CC Search" project
Python
48
star
8

legalcode-pre-2014-06-26

legalcode pre-2014-06-26
HTML
24
star
9

vue-vocabulary

A Vue component library implementing a cohesive design system to unite the web facing Creative Commons
JavaScript
24
star
10

cccatalog-dataviz

Data visualizations of CC-licensed works across the internet.
HTML
20
star
11

image-crawler

A polite image crawler that can thumbnail and extract metadata from images at scale
Python
20
star
12

policies

website terms of service, trademark policy and privacy policy
HTML
17
star
13

openhome

CC OpenHome is a small node.js application that hosts metadata for academic works (papers, etc) and allows scholars to generate beautiful, simple homepages they can link to or embed into other pages
JavaScript
10
star
14

sotc-2014

State of the Commons 2014
HTML
8
star
15

labs

(Deprecated) Tech Team blog
7
star
16

cc-link-checker

Automated link checker for legalcode and license URLs
Python
7
star
17

techstuff

Notes and tasks for Creative Commons' technical infrastructure.
7
star
18

www2015

2015 Creative Commons website archive
HTML
5
star
19

cc-cert-core

Content outline for new Creative Commons Certification programs
HTML
5
star
20

sotc-2015

State Of The Commons 2015
HTML
4
star
21

cchost

ccHost
PHP
4
star
22

fonts

A collection of typefaces for the web facing Creative Commons
JavaScript
4
star
23

platform-initiative

The Creative Commons platform initiative works to grow the commons and build a movement by creating easy, clear, and enjoyable ways for users to contribute to the commons
3
star
24

openpolicynetwork.org

OPN Website
PHP
3
star
25

open4us.org-2014

Old (2014) source for open4us.org website
PHP
3
star
26

jswidget

DEPRECATED Creative Commons JavaScript license selector in the form of a JavaScript widget
JavaScript
3
star
27

metadata_scraper

The deed metadata scraper provides a simple web interface for extracting RDFa metadata from a given URL
JavaScript
2
star
28

cc.libreoffice

LibreOffice Creative Commons Plugin
Python
2
star
29

exif

Proposal for a formal way of expressing public license information in Exif
Perl
2
star
30

cc-cert-lib

CC Certificate For Libraries
2
star
31

3.0-IGO-Port-Official-Translations-and-Adoptions

3.0-IGO-Port-Official-Translations-and-Adoptions
HTML
2
star
32

cc-cert-edu

CC Certificate For Educational Institutions
2
star
33

OER-strategy-with-Open-Ed-Orgs

OER Strategy with Open Ed Orgs
2
star
34

cc-cert-gov

CC Certificate For Government
1
star
35

donate.creativecommons.org

CiviCRM (Drupal) site that powers donate.creativecommons.org and our CRM database.
PHP
1
star
36

scripts

scripts
PHP
1
star
37

cc_org_txt

creativecommons.org translation text
1
star
38

desktop_search

Creative Commons Metadata Importer
Python
1
star
39

soundcloud-slurp

Python
1
star
40

currybot

An IRC bot which provides access to CIH formatted lunch menus.
Python
1
star
41

global-summit

The planning and execution of CC's Global Summit 2015
HTML
1
star
42

deedscraper

The deed metadata scraper provides a simple web interface for extracting RDFa metadata from a given URL
Python
1
star
43

cc.legalerrata

CC Legal Errata
HTML
1
star
44

cc-mexico-micro

Temporary microsite for mx.creativecommons.org
1
star
45

scicom

scicom
HTML
1
star
46

Institute-for-Open-Leadership

Institute for Open Leadership
1
star
47

ShareAlike-compatibility

This is the process by which we determine whether candidate licenses are compatible with BY-SA 4.0
1
star
48

open-policy-network

The Open Policy Network is a project of Creative Commons and like-minded organizations and individuals working to support the creation, adoption, and implementation of policies that require that publicly funded resources are openly licensed resources
1
star
49

xmp-pdf_license_manager

a simple tool to manage pdf licensing information
Java
1
star
50

Teamspace

An abandoned experiment in building applications with Semantic MediaWiki
1
star
51

PDM-nextgen

Creating a new public domain mark that can be used when worldwide public domain status is unknown but public domain status in at least one jurisdiction is known, in collaboration with Europeana, DPLA and CC affiliates; and if determined to be desirable, finalizing and publishing the new tool.
1
star