A GraphQL API for managing popular news links. Users can vote their favourite news links and let the world know what's trending
1. Features
2. Technologies
3. Installation and Setup
4. Running the application
5. How To Contribute
A user can perform the following actions with the application
- Create a news link
- Update a news link
- Retrieve paginated news feed
- Sort and filter news feed
- Retrieve a single news link
- Delete a news link
- Signup to the application
- Signin to the application
- Fetch list of users in the application
- Subscribe to real time event for news link creation
- Vote a news link
- Delete a vote on a news link
- Subscribe to real time event when user votes a news link
1. Nodejs
2. GraphQL
3. GraphQL yoga
4. Prisma
5. Postgres Database
6. Docker Compose
- Install and start docker on local machine
- Clone this repo
git clone https://github.com/nzediegwu1/news-link.git
- Run "yarn install" to install dependencies
- Create and start server for prisma API:
docker-compose up -d
- Deploy/Migrate prisma data mnodel to database:
npx prisma deploy
- Start application:
yarn start
- Goto http://localhost:4000 on your browser to test the endpoints on GraphQL playground or
- Goto: https://graphqlbin.com/v2/k2WNh6 to use sample requests
To contribute to the project, follow the instructions below
- Fork the repo on GitHub
- Clone the project to your own machine
- Commit changes to your own branch
- Push your work back up to your fork
- Submit a Pull request so that I can review your changes
NOTE: Be sure to rebase from from "upstream" before making a pull request!
- This project is licensed under the MIT License
- Copyright © 2018 Anaeze Nsoffor