- Clone repo and run
- To run locally, install MongoDB. In production we are using a Heroku + MongoDB Cloud backend. We have a a functioning example of this API on Heroku, to which we can add devs/access as necessary.
- You will need to add
process.envenvironmental variables for use with
MONGODB_URIspecifically, maybe you know a way to improve this for a local dev environment). Create a
nodemon.jsonfile in the root directory and add variables as key value pairs (see
npm startand navigate to appropriate route (e.g.,
http://localhost:3000/api/v0/evaluatorsor other route).
- Postman is a useful app for working with APIs (sending GET/POST requests, etc.).
This API intends to promote the principles of effective altruism by (initially) storing information about well-established nonprofit organizations as selected by certain charity evaluators. The initial purpose of this API is to feed data into a decentralized application that enables users to donate ERC20-based cryptocurrency evenly across a selection of these identified nonprofits.
API docs are here. This API is under active development, and so the docs are a work in progress as the data structures and schema continue to develop. Ultimately the docs will be written in accordance with the OpenAPI specification using a platform like Swagger or similar.
The basic API concept is to call an
evaluator object and its corresponding
nonprofit objects for integration into a dapp. There is also a newly developed
nft route for integration into Open Sea (currently on Rinkeby).
Contributing to the project
This is an open source project. Contributions are welcomed & encouraged!
- Node.js + Express
- MongoDB + Mongoose
- OpenAPI Specification
- Code is inspired from studying the Academind Building a RESTful API with Node.js series