The backend API for MCMP handles storing data of uploaded mods, managing user accounts, and more. For an in-depth overview of what the platform does, please see the frontend repository
Below are descriptions of how the API is structured. Different actions are separated into "routes" by category of what data is being searched for or modified.
Anything not currently implemented has
(Planned)
in the title.
Handles authentication to the API using passport. Currently, only a local strategy (username and password) is implemented, but we plan on extending to allow for more sign-in options in the future.
This set of routes handles all things "User".
- Get information about a user
- Update a user's account information
- Delete a user
- Create, update, or delete a Mod listing
- Get information about a mod listing
- Name, author, versions, etc.
- Dependencies
- Download link
Code contributions are always welcomed and actively encouraged! To contribute we ask that you follow the steps below:
-
Fork the repository
-
Create a new branch in your fork, or make changes to the development branch
-
Add something new, or spruce up existing code
-
Add tests where applicable
Anything that can be tested, should.
-
Run ESLint on your branch with
npm run lint
ESLint will be run on every pull request and will be prevented from merging if linting fails so it's good to check early
-
Test your changes pass the tests with
npm run test
-
Create a pull request