Metadata-Version: 2.1
Name: binary-quiz
Version: 0.1.3
Summary: A command line application and Python library for generating binary numbers for a human to decode, as well as generating the integers they represent, to check the human's work. Also optionally outputs to PDF.
Home-page: UNKNOWN
Author: Zev Averbach
Author-email: zev@averba.ch
License: MIT
Description: # Binary Quiz
        
        ## Description
        
        A command line application and Python library for generating binary numbers for a human to decode, as well as generating the integers they represent, to check the human's work.
        
        ## Compatibility
        
        Currently only supported on MacOS and Linux
        
        ## Installation on MacOS or Linux
        1) `brew install ghostscript` ([install homebrew](https://brew.sh) if needed)
        2) `brew install enscript`
        3) `pip install binary-quiz`
        
        ## Usage
        ```
        binary [OPTIONS] BITS NUM_PROBLEMS
        
        Options:
          --pdf
          --silent
          --include-answers
          --output-filepath TEXT
          --help                  Show this message and exit.
        
        ```
        
        ## Examples of Output
        
        ### PDF
        
        ```shell
        $ binary 8 100 --pdf
        ```
        
        👆👆 this command produces two PDFs like this 👇👇
        
        [![example of problems.pdf output](https://github.com/zevaverbach/binary_quiz/blob/master/examples/problems.png)](https://github.com/zevaverbach/binary_quiz/blob/master/examples/problems.pdf)
        [![example of problems-answers.pdf output](https://github.com/zevaverbach/binary_quiz/blob/master/examples/problems-answers.png)](https://github.com/zevaverbach/binary_quiz/blob/master/examples/problems-answers.pdf)
        
        ### stdout
        
        ```shell
        00011110
        
        00111000
        
        11101000
        
        11110000
        
        01011101
        
        01100110
        
        01010010
        
        01110010
        
        10101001
        
        10001010
        
        10010010
        
        11111101
        
        10001110
        
        01111111
        
        00001110
        
        11101011
        
        00010011
        
        00101000
        
        01011010
        
        01001001
        
        01011101
        
        11000011
        
        10000000
        
        11011001
        
        10000110
        
        00000101
        
        11110100
        
        11000010
        
        00110000
        
        11010110
        
        10100101
        
        01000100
        
        00011000
        
        11111111
        
        00111100
        
        00010010
        
        01101111
        
        10101001
        
        10001011
        
        00011011
        
        11010011
        
        01001000
        
        01011111
        
        01010101
        
        10111011
        
        11100010
        
        10011010
        
        10011110
        
        11000010
        
        10001110
        
        11100101
        
        11000101
        
        01001001
        
        01100010
        
        10010001
        
        01110110
        
        11000100
        
        11101101
        
        10000111
        
        10010111
        
        10111100
        
        01001111
        
        10001001
        
        00111001
        
        10001011
        
        10110110
        
        10001001
        
        10100100
        
        01110000
        
        01110001
        
        01111100
        
        10001101
        
        00010000
        
        11001110
        
        01011010
        
        01110000
        
        10000101
        
        01110001
        
        10100110
        
        01010001
        
        00100100
        
        11011011
        
        00011000
        
        11010110
        
        01000001
        
        00111101
        
        11010010
        
        01001110
        
        01100001
        
        10100100
        
        10110100
        
        01000000
        
        00100010
        
        01101010
        
        10000001
        
        11111100
        
        10010011
        
        11001011
        
        11001010
        
        01011100
        *BEGIN ANSWERS*
        00011110 | 30 
        
        00111000 | 56 
        
        11101000 | 232 
        
        11110000 | 240 
        
        01011101 | 93 
        
        01100110 | 102 
        
        01010010 | 82 
        
        01110010 | 114 
        
        10101001 | 169 
        
        10001010 | 138 
        
        10010010 | 146 
        
        11111101 | 253 
        
        10001110 | 142 
        
        01111111 | 127 
        
        00001110 | 14 
        
        11101011 | 235 
        
        00010011 | 19 
        
        00101000 | 40 
        
        01011010 | 90 
        
        01001001 | 73 
        
        01011101 | 93 
        
        11000011 | 195 
        
        10000000 | 128 
        
        11011001 | 217 
        
        10000110 | 134 
        
        00000101 | 5 
        
        11110100 | 244 
        
        11000010 | 194 
        
        00110000 | 48 
        
        11010110 | 214 
        
        10100101 | 165 
        
        01000100 | 68 
        
        00011000 | 24 
        
        11111111 | 255 
        
        00111100 | 60 
        
        00010010 | 18 
        
        01101111 | 111 
        
        10101001 | 169 
        
        10001011 | 139 
        
        00011011 | 27 
        
        11010011 | 211 
        
        01001000 | 72 
        
        01011111 | 95 
        
        01010101 | 85 
        
        10111011 | 187 
        
        11100010 | 226 
        
        10011010 | 154 
        
        10011110 | 158 
        
        11000010 | 194 
        
        10001110 | 142 
        
        11100101 | 229 
        
        11000101 | 197 
        
        01001001 | 73 
        
        01100010 | 98 
        
        10010001 | 145 
        
        01110110 | 118 
        
        11000100 | 196 
        
        11101101 | 237 
        
        10000111 | 135 
        
        10010111 | 151 
        
        10111100 | 188 
        
        01001111 | 79 
        
        10001001 | 137 
        
        00111001 | 57 
        
        10001011 | 139 
        
        10110110 | 182 
        
        10001001 | 137 
        
        10100100 | 164 
        
        01110000 | 112 
        
        01110001 | 113 
        
        01111100 | 124 
        
        10001101 | 141 
        
        00010000 | 16 
        
        11001110 | 206 
        
        01011010 | 90 
        
        01110000 | 112 
        
        10000101 | 133 
        
        01110001 | 113 
        
        10100110 | 166 
        
        01010001 | 81 
        
        00100100 | 36 
        
        11011011 | 219 
        
        00011000 | 24 
        
        11010110 | 214 
        
        01000001 | 65 
        
        00111101 | 61 
        
        11010010 | 210 
        
        01001110 | 78 
        
        01100001 | 97 
        
        10100100 | 164 
        
        10110100 | 180 
        
        01000000 | 64 
        
        00100010 | 34 
        
        01101010 | 106 
        
        10000001 | 129 
        
        11111100 | 252 
        
        10010011 | 147 
        
        11001011 | 203 
        
        11001010 | 202 
        
        01011100 | 92 
        
        ```
        
        ## Other Projects That Could Be Built Using This Package
        - do the problems online/on computer
        - a website to serve these up and let people use them for free
          - a web API that serves it, so people can do that programmatically
          - a snail mail service?
            - https://developers.lulu.com/price-calculator
          - if there's going to be exercises in the browser,
            - parseInt('0101', 2)
          - maybe re-implement in Javascript so all computation and rendering is done on the client
            - [PDF rendering in the browser](https://pspdfkit.com/blog/2018/render-pdfs-in-the-browser-with-pdf-js/)
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.5
Description-Content-Type: text/markdown
