{"id":14987698,"url":"https://github.com/darthgera123/quizapp","last_synced_at":"2025-04-12T00:17:00.249Z","repository":{"id":46631414,"uuid":"150465246","full_name":"darthgera123/QuizApp","owner":"darthgera123","description":"Quiz Portal with backend in Go and Gin while frontend in React","archived":false,"fork":false,"pushed_at":"2021-10-02T21:18:41.000Z","size":3016,"stargazers_count":25,"open_issues_count":8,"forks_count":22,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-12T00:16:53.125Z","etag":null,"topics":["gin-gonic","golang","reactjs","rest-api"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/darthgera123.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-26T17:35:39.000Z","updated_at":"2024-06-15T20:44:01.000Z","dependencies_parsed_at":"2022-08-29T13:31:56.700Z","dependency_job_id":null,"html_url":"https://github.com/darthgera123/QuizApp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darthgera123%2FQuizApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darthgera123%2FQuizApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darthgera123%2FQuizApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/darthgera123%2FQuizApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/darthgera123","download_url":"https://codeload.github.com/darthgera123/QuizApp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248497817,"owners_count":21113984,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gin-gonic","golang","reactjs","rest-api"],"created_at":"2024-09-24T14:15:12.152Z","updated_at":"2025-04-12T00:17:00.231Z","avatar_url":"https://github.com/darthgera123.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# QuizApp\nThe given quizapp has been made in Go and React. This Readme is a walkthrough off all API endpoints as well as functionalities if any added.\n\n## Setup\nTo setup the given project follow the instructions separately for each - \n\n### Frontend : React \n     Download the project\n     In cmd navigate to the folder using command `cd react-app`\n     Run `yarn install` to install all dependencies\n     If no error is encountered then run `yarn start`\n     \n     OR\n     \n     If npm is already installed on your system then\n     `cd react-app`\n     `npm install`\n     `npm start`\n     \n     \n### Backend: Go\n     Download the project\n     In cmd navigate to Go Folder using command `cd go`\n     Install the following libraries for it to run - \n     - \"github.com/gin-contrib/cors\"\n     - \"github.com/gin-gonic/gin\"  \n     - \"github.com/jinzhu/gorm\"\n     - \"github.com/jinzhu/gorm/dialects/sqlite\"\n     - \"golang.org/x/crypto/bcrypt\"\n\n    To set your GOPATH add these lines into ~/.bashrc\n    export GOPATH=$HOME/go\n    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin\n    \n    Install packages by run go get -u \u003cname of package\u003e\n\n### Database - \nThe project uses sqlite3 for RDBMS and has teh following tables  \n\nSNo | Table | Brief Description\n--- | --- | ---\n1 | Users | List of Registered Users, alpha is admin\n2 | Quiz | List of question pertaining to a quiz and the answers\n3 | Genres | List of Genres\n4 | QGenres | List of Quiz within each Genre\n5 | Score | List of Scores of each user played\n\n`Alpha` is the admin username\nPassword is `sad`. This wasnt hashed while the rest were.\n\n\n## API Endpoints\nThe following are the Api endpoinst along with what they do  \n### User table\n+ GET :`/people/` This sends the set of users\n+ POST : `/people`  This creates a new user\n+ POST: `/signin/`  This is for login\n+ GET : `people/users/:username ` This sends a particular user info\n+ DELETE : `/people/:id` This deletes a particular user\n### Quiz/Genre table\n+ POST : `/quiz/` This creates a new question\n+ GET : `/quiz/`  This sends the set of questions\n+ GET : ` /quiz/:qname`  This sends a particular quiz\n+ GET : `/quiz/:qname/:question ` This sends ta particular question\n+ PUT : `/quiz/:qname/:question` This sends an update on a question\n+ DELETE : `/quiz/:genre/:qname/:question` This deletes a qiven question\n+ GET : `/genres/` This sends the set of quiz\n+ GET : `/all-genres/`  This sends all genres\n+ GET : `/genres/:genre` This sends quiz of a particular genre\n+ DELETE : `/genres/:qname` This deletes a particular quiz\n### Score table\n+ POST : `/score/` This adds a new score\n+ PUT : `/score/` Updates a pre-existing score\n+ GET : `/score/:username/:genre/:qname` Gets a particular quiz score\n+ GET : `/score/` Gets all scores\n+ GET : `/score-genre/:genre` Gets a particular genre score\n+ GET : `/score-users/:username` Gets Quiz Scores based on username\n\n## Functionalities\n\n### Guest\n+ Can Register\n+ Can Login\n\n### User\n+ Can Play Quiz\n+ Can View Quiz Played By It\n+ Can View Leaderboard of All Genres\n\n### Admin \n+ Can Create Quiz\n+ Can Delete Quiz\n+ Can Update/Delete Questions is a Quiz\n+ Can View all users and Delete Users\n+ Questions can also have images\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarthgera123%2Fquizapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdarthgera123%2Fquizapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdarthgera123%2Fquizapp/lists"}