Files
computer-science-flash-cards/README.md
2016-10-17 09:41:13 -07:00

65 lines
2.2 KiB
Markdown

# Computer Science Flash Cards
This is a little website I've put together to allow me to easily make flash cards and quiz myself for memorization of:
- general cs knowledge
- vocabulary
- definitions of processes
- powers of 2
- design patterns
- code
- data structures
- algorithms
- solving problems
- bitwise operations
Will be able to use it on:
- desktop
- mobile (phone and tablet)
It uses:
- Python 3
- Flask
- SQLite
---
## How to run it
*Provided by [@Tinpee](https://github.com/tinpee) - tinpee.dev@gmail.com*
1. Clone project to a directory on your web server.
1. Edit the config.txt file. The username and password will be the login
for your site. There is only one user - you.
1. Follow this long tutorial to get Flask running. It was way more work than it should be:
https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uwsgi-and-nginx-on-ubuntu-16-04
- `wsgy.py` is the entry point. It calls `flash_cards.py`
- This is my systemd file `/etc/systemd/system/flash_cards.service`: [view](flash_cards.service)
- you can see the paths where I installed it, and the name of my virtualenv directory
- when done with tutorial:
```
sudo systemctl restart flash_cards
sudo systemctl daemon-reload
```
1. When you see a login page, you're good to go.
1. Uncomment the commented block in `flash_cards.py`
1. Restart Flask. You have to use `sudo systemctl restart flash_cards`.
1. Hit the URL /initdb on your web server. You'll see a message that the
database has been initialized.
1. Comment that code again.
1. Restart Flask.
1. Go to / on your webserver.
1. Log in.
1. Click the "General" or "Code" button and make a card!
1. When you're ready to start memorizing, click either "General" or "Code"
in the top menu.
## How to run with Docker
__Make sure you already installed [docker](https://www.docker.com)__
- Clone project to any where you want and go to source folder
- Build image: `docker build . -t cs-flash-cards`
- Run container: `docker run -d -p 8000:8000 --name cs-flash-cards cs-flash-cards`
- Go your browser and type `http://localhost:8000`
*Happy learning!*