Note: If you see a step below that could be improved (or is outdated), please update instructions. We rarely go through this process ourselves, so your fresh pair of eyes and your recent experience with it, makes you the best candidate to improve them for other users.
Although this repository only contains the code for the API and the code for the UI is in a separate repository, these instructions will get both running on developer mode. That's why you need to download both codebases under the same directory. Here's an example of how it can be done if you have a git client setup and ready to work:
$ mkdir -p ~/src/github.com/opencollective
$ cd ~/src/github.com/opencollective
$ git clone https://github.com/opencollective/opencollective-api
$ git clone https://github.com/opencollective/frontend
If you by any chance is a Vagrant user,
just run the usual vagrant up
within the opencollective-api
directory and go to http://localhost:23000/ in your browser.
If you prefer using docker-compose
make sure it's installed and
working and then execute the following command:
$ docker-compose -f docker/docker-compose.yml up --build
Then you'll be able to access the UI from http://localhost:13000 and the API from the address http://localhost:13060.
This new environment is created with the opencollective_dvl
database. And it comes with enough data to play with most of the
system.
However, trying to access the home page will lead you to a 404
page. That's because we're porting our old UI over to the new one. The
repository
opencollective-website
is deprecated but it still powers our home page and the /discover
page.
To see something interesting, please access one of the collectives that are present in this sanitized version of the database. Here are some examples:
- http://localhost:13000/opensource
- http://localhost:13000/apex
- http://localhost:13000/railsgirlsatl
- http://localhost:13000/tipbox
- http://localhost:13000/brusselstogether
- http://localhost:13000/veganizerbxl
If you have any questions, ping us on Slack (https://slack.opencollective.org) or on Twitter (@opencollect).
- The User model is confusing with the concept of User Collective, we should merge the "User" model with the "ConnectedAccount" model so that we could have multiple emails per User.
- CreatedByUserId is confusing, it should be "CreatedByCollectiveId"