Git Product home page Git Product logo

lets-quiz's Introduction

Let's Quiz

This is an online quiz organizing website project, developed using Python's web framework Django.
For front-end designing I have used Twitter's front-end library Bootstrap4.

GitHub release GitHub issues GitHub forks GitHub stars GitHub license Open Source Love svg1

Current Features

Site access features:

  • User must be logged in to access the Quiz.
  • For signup user is required to give username, first name, last name, e-mail address and password.
  • For login the user will be required to enter username and password only.

Features of the quiz:

  • All questions are multiple choice question.
  • Each question is displayed only once per user.
  • Questions are displayed randomly for every user.
  • If the user by-mistake presses refresh or go back to the previous page, there will be a new question for the user and the question he/she was on will be marked as attempted.
  • A message will be displayed after every attempted question whether the answer was correct or incorrect.

Leaderboard features:

  • Leaderboard is a shorted list according to the score obtained by the users.
  • If two users are having same score, the user who has signed up earlier will have good ranking than the one who joined late.
  • Leaderboard is open to all. No login required.

Administrative features:

  • Only admin can add questions.
  • Admin can add questions and modify them until they are not marked as Has been published?
  • Once a question has been published, it can neither be modified nor can be accessed. Admin can only see a list of questions.
  • Admin can search questions by question text or choice text.
  • Admin can filter questions based on whether the questions have been published or not.

Getting started with development

Dependencies:

  • Python 3.6.x
  • Django 1.11.x
  • Ubuntu 17.04 or later or Linux Mint 18.2 or later

1. Clone this repository

git clone https://github.com/akashgiricse/lets-quiz.git
cd lets_quiz

2. Install the virtualenvwrapper

Follow instructions on official documentation page.

3. Create the virtualenv

## run following command from `lets_quiz` directory
mkvirtualenv lets_quiz -a "$(pwd)" -p python3.6

4. Install python packages

## Activate the virtualenv which you created on the last step
workon lets_quiz
cd ..
pip install -r requirements.txt

5. Setup the database

TODO - Add instructions for this when I start using MySQL database.

6. Run database migrations

cd lets_quiz
python manage.py migrate

7. Create superuser

python manage.py createsuperuser

8. Run development server

python manage.py runserver

Contribute

Contributors

Support

  • If you are having issues, please let me know. I have a mailing list located at: [email protected]

License

MIT License

Copyright (c) 2018 Akash Giri.

lets-quiz's People

Contributors

dependabot[bot] avatar harshit-techno avatar shubhampatil1008 avatar vardanbhaskar avatar niteshsharma9 avatar

Stargazers

Roman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.