An app for the giving and receiving of anonymous advice.
- nextJS
- data storage with PostgreSQL
- ORM with prisma
- API built with GraphQL/Apollo/Nexus (to learn about graphql)
- AuthO - for easy authentication (can be replaced later)
- Deploy to Heroku
- sign up - username, password, email only
- text only - no pictures, no links
- you get to ask one question a day
- you get to respond to one question a day
- server gathers questions and randomly selects a user to answer
- responding to a question opens up a temporary real time chat between asker and answerer
- chat closes after a total of 5000 characters sent
- chat can be closed at any time by either party
- rate advice
- ratings invisible but stored on server
- those with higher ratings more likley to get a question served to them
If you have just pulled from GitHub, run yarn add
Run the development server:
yarn dev
Open http://localhost:3000 with your browser to see the result.
API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.js
.
The pages/api
directory is mapped to /api/*
. Files in this directory are treated as API routes instead of React pages.
This is a Next.js project bootstrapped with create-next-app
.
An apollo server will start running on yarn dev.
To access the apollo query builder, go to http://localhost:3000/api/graphql. This will connect to the apollo server with an up to date schema.
Because we are using Prisma as the ORM, the queries built using nexus will use the prisma connection to access the data needed for a particular request.
If you are working on a new feature start a new branch. Pull requests must be reviewed by one other member of the team before being merged into main.