Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/centerforopenscience/ember-osf-preprints
OSF Preprints: The open preprint repository network
https://github.com/centerforopenscience/ember-osf-preprints
ember osf preprints science
Last synced: about 1 month ago
JSON representation
OSF Preprints: The open preprint repository network
- Host: GitHub
- URL: https://github.com/centerforopenscience/ember-osf-preprints
- Owner: CenterForOpenScience
- License: apache-2.0
- Created: 2016-07-20T14:56:36.000Z (over 8 years ago)
- Default Branch: develop
- Last Pushed: 2024-03-01T22:15:19.000Z (11 months ago)
- Last Synced: 2024-04-13T21:57:40.387Z (9 months ago)
- Topics: ember, osf, preprints, science
- Language: JavaScript
- Homepage: https://osf.io/preprints/
- Size: 21.8 MB
- Stars: 39
- Watchers: 12
- Forks: 39
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# ember-osf-preprints
`master` Build Status: ![Master Build Status](https://github.com/CenterForOpenScience/ember-osf-preprints/workflows/CI/badge.svg?branch=master)
`develop` Build Status: ![Develop Build Status](https://github.com/CenterForOpenScience/ember-osf-preprints/workflows/CI/badge.svg?branch=develop)
[![Coverage Status](https://coveralls.io/repos/github/CenterForOpenScience/ember-osf-preprints/badge.svg?branch=develop)](https://coveralls.io/github/CenterForOpenScience/ember-osf-preprints?branch=develop)
This is the codebase for OSF preprints.
This guide will help you get started if you're interested.## Prerequisites
You will need the following things properly installed on your computer.
- [Git](http://git-scm.com/)
- [Node.js](http://nodejs.org/) (preferably via [nvm](https://github.com/creationix/nvm#install-script))
- [Yarn](https://yarnpkg.com/)
- [Ember CLI](http://ember-cli.com/)## Installation
- `git clone` this repository
- To pull in local preprint provider assets as well, use `git clone --recursive` instead (assuming you are using git >= 1.6.5).
- `yarn install --frozen-lockfile`## Preprint Provider Assets
If you will be using local preprint provider assets (rather than the CDN):
1. If you did not clone the repository using `--recursive`, run: `git submodule update --init --recursive`
2. Set the PROVIDER_ASSETS_URL environment variable to 'local'### Updating Assets
- To refresh your local assets, run: `git submodule update`
- To update the assets submodule to the latest assets, run: `npm run update-assets`
- To update to the latest assets and create a hotfix, run: `npm run updates-assets-hotfix`## Running / Development
For local development, this is designed to run alongside (and from within) the flask application for osf.io.
1. Check out this OSF feature branch: https://github.com/CenterForOpenScience/osf.io/tree/feature/ember-preprints
2. Start your Ember server: `ember serve`
3. Copy [these lines](https://github.com/centerforopenscience/osf.io/blob/a98615b68a5cf620bc76c550808dd78ea3a305ec/website/settings/local-dist.py#L18-L22)
to your `website/settings/local.py` file. Uncomment `'/preprints/': 'http://localhost:4200',` and restart your flask app.
4. Visit your app at http://localhost:5000/preprints/### Provider Domains
1. Start the API server
1. Run `sudo ./scripts/add-domains.js`. This will add the domains to your `/etc/hosts`. Use `--dry` for a dry run.
1. Visit your app at one of the provider domains with `https://local.:4200` (e.g. `http://local.socarxiv.org:4200`)If you encounter problems, make sure that your version of ember-osf is up to date. If login fails, try logging in from
any other OSF page, then returning to the preprints app.### Generating test data on the OSF
There are a few scripts to run to populate your local preprint providers list, and help generate some "fake" preprints locally so you can begin testing using the OSF API.
- Populate the OSF's PreprintProvider model with data:
`python -m scripts.populate_preprint_providers`
- Populate the OSF's Subject model with data:
`python -m scripts.update_taxonomies`
- Create "fake" preprints using some additional arguments to the `create_fakes` script:
`python -m scripts.create_fakes -u [email protected] --nprojects 2 --preprint True --preprintprovider osf,psyarxiv`
_notes_: You can enter as many providers as you like, separated by commas. Also, this script does not currently create actual fake files, only fake file metadata; the file itself won't render in a preprint view, but you can still request its information from the API.
### Code Generators
Make use of the many generators for code, try `ember help generate` for more details
### Running Tests
You can run tests either with ember installed on your machine or by using [Docker](https://docs.docker.com/engine/getstarted/step_one/)
#### On your local machine
- `ember test`
- `ember test --server`#### With Docker
- `docker build --tag preprints .`
- `docker run preprints`### Building
- `ember build` (development)
- `ember build --environment production` (production)## Further Reading / Useful Links
- [Requirements and road map for this service](https://docs.google.com/spreadsheets/d/1SocElbBjc_Nhme4-SJv2_zytBd1ys8R5aZDb3POe94c/edit#gid=1340026270)
- [ember.js](http://emberjs.com/)
- [ember-cli](http://ember-cli.com/)
- Development Browser Extensions
- [ember inspector for chrome](https://chrome.google.com/webstore/detail/ember-inspector/bmdblncegkenkacieihfhpjfppoconhi)
- [ember inspector for firefox](https://addons.mozilla.org/en-US/firefox/addon/ember-inspector/)