Skip to content

The Questioner is a simple and generic REST API that can be used to develop a Question and Answer game with custom auth or OAuth ( created under #100DaysOfCode challenge )

License

Notifications You must be signed in to change notification settings

sarthakpranesh/Questioner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Questioner

GitHub repo size GitHub issues GitHub pull requests GitHub Repo stars GitHub


Introduction

Many online games and competitions like various CTFs or events like Enigma have something in common and that is a simple Question and Answer model that the main backend service is made to handle. Questioner is this common Question and Answer backend service that can be easily used to host such an online event. This would help the team focus more on structuring questions, investing more time in frontend and other aspects of the event.


Technologies Used

  • Go Lang
  • Mongo Atlas Database
  • Gorilla Mux
  • godotenv
  • jwt-go

For Developers

Make sure you have go installed

For local development

  1. git clone https://github.com/sarthakpranesh/Questioner
  2. cd Questioner
  3. create a .env file and add the following content
    MONGO_URL = "<your mongo cluster connection URL>"
    ADMIN_PASSWORD = "<your admin password>"
    PORT = "<your port number>"
    
    here the ADMIN_PASSWORD is used as an key to authenticate creation and deletion of questions
  4. go mod tidy
  5. go run main.go - you'll have to restart the server each time you make a change to see its affect

For hosting their is a docker file included in the project that can be easily used to build and host a docker image of the project.


Documentation

The End Points are tested and documented using Postman and the collection can be accessed from link below

Run in Postman


Found Something Broken

If you find any bug, vulnerability, or have any feature suggestion please feel free to open an Issue here


Made with ❤️

About

The Questioner is a simple and generic REST API that can be used to develop a Question and Answer game with custom auth or OAuth ( created under #100DaysOfCode challenge )

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published