{"id":28802752,"url":"https://github.com/ryanfb/cite-collection-editor","last_synced_at":"2025-07-02T23:35:22.376Z","repository":{"id":14729386,"uuid":"17450158","full_name":"ryanfb/cite-collection-editor","owner":"ryanfb","description":"Client-side JavaScript editor for CITE collections stored in Google Fusion Tables","archived":false,"fork":false,"pushed_at":"2018-02-19T19:49:29.000Z","size":474,"stargazers_count":1,"open_issues_count":6,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-04-11T17:41:03.525Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"CoffeeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ryanfb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-03-05T18:17:03.000Z","updated_at":"2019-07-25T15:48:50.000Z","dependencies_parsed_at":"2022-08-02T15:45:11.739Z","dependency_job_id":null,"html_url":"https://github.com/ryanfb/cite-collection-editor","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/ryanfb/cite-collection-editor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanfb%2Fcite-collection-editor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanfb%2Fcite-collection-editor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanfb%2Fcite-collection-editor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanfb%2Fcite-collection-editor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ryanfb","download_url":"https://codeload.github.com/ryanfb/cite-collection-editor/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryanfb%2Fcite-collection-editor/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260515088,"owners_count":23020618,"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":[],"created_at":"2025-06-18T08:07:45.412Z","updated_at":"2025-07-02T23:35:21.728Z","avatar_url":"https://github.com/ryanfb.png","language":"CoffeeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"CITE Collection Editor\n======================\n\nOverview\n--------\n\nThis is a client-side JavaScript editor for [CITE collections](http://cite-architecture.github.io/) stored in Google Fusion Tables.\n\nConfiguration\n-------------\n\n* Get a Google Fusion Tables API key:\n  * Visit the [Google APIs Console](https://code.google.com/apis/console) (you may need to sign up and create an initial project)\n  * Go to the 'Services' tab and enable the Fusion Tables API\n  * Go to the 'API Access' tab and create a client ID\n  * Set the redirect URI to the HTML endpoint the JavaScript will be called from\n  * Set 'JavaScript origins' to the domain the JavaScript will be hosted on\n* Create a Fusion Table with columns for the CITE properties you wish to have in your CITE collection. All columns should have type \"Text\", except any `datetime`/`timestamp` properties which can have type \"Date/Time\".\n* Copy or edit `src/capabilities/testedit-capabilities.xml` to reflect your CITE collection(s) and properties. The `class` attribute of a `\u003cciteCollection\u003e` should be the encrypted Fusion Tables table id. Set the `abbr` property of `\u003cnamespaceMapping\u003e` to your CITE namespace abbreviation. URNs in the collection will be of the form `urn:cite:{namespaceMapping/@abbr}:{citeCollection/@name}`. The CITE Collection Editor has special handling for a few CITE properties:\n  * the `citeProperty` with `@type=\"citeurn\"` and `@name` corresponding to `citeCollection/@canonicalId` will be an automatically generated next-available URN (or URN version)\n  * a `citeProperty` with `@type=\"authuser\"` will be automatically populated from a user's Google authentication credentials\n  * a `citeProperty` with `@type=\"timestamp\"` will be automatically populated with the current datetime\n  * a `citeProperty` with `@type=\"markdown\"` will get Markdown editing/preview via [PageDown](https://code.google.com/p/pagedown/)\n* Copy `gradle.properties-dist` to `gradle.properties`, adding your API key and relative capabilities URL\n\n        capabilities_url=capabilities/your-testedit-capabilities.xml\n        google_client_id=your_id_here.apps.googleusercontent.com\n\n* Run `gradle build`\n\n## Requirements\n- gradle 1.1 required to compile coffeescript to javascript\n\n## Authentication Models\n\nThere are a few ways the CITE Collection Editor can be set up to allow editing of Fusion Tables:\n\n* Use Fusion Tables permissions. This is the default, if you're just running the CITE Collection Editor without a [CITE Collection Manager](https://github.com/ryanfb/cite-collection-editor/) proxy. Anyone who wants to edit the collection must be added through the Fusion Tables UI via `File-\u003eShare` with edit permissions.\n* Use the [CITE Collection Manager](https://github.com/ryanfb/cite-collection-editor/) proxy. This allows anyone with a Google account to add to the collection (via proxied authentication). Users can be managed via the `Blocked` column of the Collection Manager's authentication table. You could also change the default of the `Blocked` column in the Collection Manager to `true` for new users, to require an administrator to whitelist new user requests first before they can add contributions, though I have not tried using this authentication model.\n\nIt used to be possible to set permissions for a Fusion Table to \"anyone with the link can edit\", which would allow you to live on the edge and allow contributions without the need for a proxy, but this has apparently been deprecated by Google.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryanfb%2Fcite-collection-editor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fryanfb%2Fcite-collection-editor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryanfb%2Fcite-collection-editor/lists"}