Skip to content

Commit 3cdde3e

Browse files
committed
Update to v0.2.1
2 parents 997da9a + 6738768 commit 3cdde3e

File tree

21 files changed

+1291
-42
lines changed

21 files changed

+1291
-42
lines changed

.github/workflows/pythonapp.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
# This workflow will install Python dependencies, run tests and lint with a single version of Python
22
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
33

4+
<<<<<<< HEAD
45
name: Code correctness
6+
=======
7+
name: Python Password testing
8+
>>>>>>> dev
59

610
on:
711
push:
@@ -23,14 +27,24 @@ jobs:
2327
- name: Install dependencies
2428
run: |
2529
python -m pip install --upgrade pip
30+
<<<<<<< HEAD
2631
pip install flake8
32+
=======
33+
pip install flake8 pytest
34+
>>>>>>> dev
2735
pip install -r requirements.txt
2836
- name: Lint with flake8
2937
run: |
3038
# stop the build if there are Python syntax errors or undefined names
3139
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
3240
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
3341
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
42+
<<<<<<< HEAD
3443
# - name: Test with pytest
3544
# run: |
3645
# pytest
46+
=======
47+
- name: Test with pytest
48+
run: |
49+
pytest "python_password/tests/test.py"
50+
>>>>>>> dev

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
# Cache
22
__pycache__
3+
.pytest_cache
34

45
# IDE folder
56
.idea
67

78
# Virtual env
89
venv
910

11+
# Logs
12+
logs
13+
1014
# Scripts
1115
scripts
1216
*.bat

MANIFEST.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
include *.md
22
include LICENSE
33
include *.kv
4+
include *.py
5+
include requirements.txt

README.md

Lines changed: 56 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,70 @@
11
# Python Password
22

3+
<<<<<<< HEAD
34
![Code correctness](https://github.com/AnonymousX86/Python-Password/workflows/Code%20correctness/badge.svg)
45

56
**Hello world!** This is my first project of usable program.
7+
=======
8+
**Hello world!** This is my very first project of usable program.
9+
>>>>>>> dev
610
7-
*For now it's named as above, because I have no better idea how to name it. Here are some words about it.*
11+
### What is the program about?
812

9-
## What is the program about?
1013
Python Password is intended to safely store passwords.
1114

12-
## How does it work?
13-
Program is saving passwords to local database (SQLite database). Passwords are encrypted with a secret key, based
14-
on master password and salt, both could be a user input (or only the first one) so you can re-create the file
15-
when it's gone for some reasons. When you would like to get any password it won't be prompted on the screen, but
16-
safely copied to clipboard.
17-
18-
## Quick start guide for `v0.1.x`
19-
1. At very first launch, program will create 3 files:
20-
21-
- `Alpha.key`,
22-
- `Beta.key`,
23-
- `Passwords.db`.
24-
25-
All of them are needed for proper program functioning. Each subsequent start of the program is trying to find those
26-
files. Every missing file will be re-created.
27-
28-
2. After program will check files, you will se typical console GUI. You can provide option number, or underlined letter.
29-
Options are:
30-
31-
1. **Change alpha password** - if you want to change your master password.
32-
2. **Get password** - program shows all saved passwords' names and asks which you want to get. Password isn't
33-
prompted, it's being copied to clipboard. (Same as <kbd>Ctrl + C</kbd>, <kbd>Ctrl + V</kbd>)
34-
3. **Set password** - used for saving password.
35-
4. **Delete password** - after double inserting password's name, that password is being deleted from local database.
36-
5. **Info** - useful links and info about the program.
37-
6. **Exit** - I think I don't have to describe it.
38-
39-
3. Program is working in loop, so it will continue working unless you will close the window or select `Exit` option.
15+
### How does it work?
16+
17+
Program is saving passwords to local database (SQLite database). Passwords are encrypted with a secret key, based on
18+
master password and salt, both could be a user input or random values, so you can re-create the file when it's gone for
19+
some reasons. When you would like to get any password it won't be prompted on the screen, but safely copied to
20+
clipboard.
21+
22+
## Quick start guide
23+
24+
25+
### Passwords menu
26+
27+
Maim screen of program is passwords menu. From here you can:
28+
29+
- add passwords,
30+
- copy passwords,
31+
- delete passwords.
32+
33+
On the left side there will be displayed list of saved passwords. Ypu can click on specific password to see context
34+
menu wth 3 options; "copy", "delete" and "nothing".
35+
36+
On the right side there are 4 sections.
37+
38+
1. **Adding password.** To add password, simply enter it's alias and password itself. Then click button to add it.
39+
2. **Removing password.** You can delete password also from here. Simply provide it's alias and click button.
40+
3. **Info.** - Here you can see how many passwords there are in database.
41+
4. **Refresh.** - Click this button to refresh view, and fetch passwords from local database.
42+
43+
44+
### Settings menu
45+
46+
In this menu, you can:
47+
48+
- change alpha password,
49+
- change beta password.
50+
51+
You can see in `FAQ.md` how do they work.
52+
53+
There will be also options to manage backups.
54+
55+
56+
### Info menu
57+
58+
On the left side, there are some basic information about version, author and 3rd party software.
59+
60+
On the right side you can see (of course clickable) links.
61+
4062

4163
## How to start using?
64+
4265
For download please look at [releases section](https://github.com/AnonymousX86/Python-Password/releases).
4366

44-
If you want to help me improve this program, (report issues etc.) please contact me via Discord: `Anonymous©#7296`,
45-
or use [GitHub issues](https://github.com/AnonymousX86/Python-Password/issues).
67+
---
4668

47-
### Thanks for all of your help!
69+
*If you want to help me improve this program, (report issues etc.) or just talk, please contact me via
70+
Discord: `Anonymous©#7296`, or use [GitHub issues](https://github.com/AnonymousX86/Python-Password/issues).*

docs/CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,13 @@ This file contains changes made to `Python Password` program.
2121
- Checking files' integrity even more often.
2222
- Most od exceptions are handled properly.
2323

24+
### 0.2.0: May 10, 2020
25+
26+
- First GUI pre-release.
27+
- Most functions from console UI version.
28+
- User files are now saved to `AppData\Local` directory.
29+
30+
### 0.2.1: May 15, 2020
31+
32+
- Updated GUI to material design standard.
33+
- All functions of `v0.1.*` included.

docs/FAQ.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Frequently asked questions
2+
Please read this, if you're unsure how the program works.
3+
4+
5+
## Where passwords are stored?
6+
7+
Your passwords are stored locally, so only you can access this file from your's computer. Files are stored in default
8+
local app data directory (default is `C:\Users\YOUR_USERNAME\AppData\Local`).
9+
10+
11+
## How passwords are saved?
12+
13+
All password are stored in local SQLite database. ([What's SQLite?][sqlite]</sup>) Before program saves them, they're
14+
being encrypted with alpha password, which is encrypted with beta password.
15+
16+
17+
## What are alpha and beta passwords?
18+
19+
All passwords are encrypted with alpha password. So with the same alpha password, two passwords will be encrypted in
20+
the same way.
21+
22+
Beta password is used to encrypt alpha password. So if you want to reproduce alpha password on another computer,
23+
beta passwords must match. Otherwise, passwords will be encrypted in another way and you won't be able to get passwords
24+
encrypted with another combination of alpha and beta passwords.
25+
26+
27+
## Who has access passwords?
28+
29+
Only those who are using program, on your's computer profile. Different users on the same PC will have separate settings
30+
and saved data.
31+
32+
33+
## Program is acting weird, what can I do?
34+
35+
Probably you found a bug. Please let me know what it is by making and [issue][issues].
36+
37+
38+
## I think something could be done better
39+
40+
That's great! Be sure to make an enhancement [issue][issues].
41+
42+
Or if you're a Python
43+
programmer you can make a [pull request][pulls] with code changes.
44+
45+
46+
## How can I get in touch with developer?
47+
48+
You can invite me via Discord, my nick is `Anonymous©#7296` or [send me an email][mail].
49+
50+
51+
## I've not found what am I looking for
52+
53+
You have two options:
54+
- Open new issue [here][issues].
55+
- Write to me.
56+
57+
58+
[sqlite]: <https://www.sqlite.org/index.html>
59+
[issues]: <https://github.com/AnonymousX86/Python-Password/issues/new/choose>
60+
[pulls]: <https://github.com/AnonymousX86/Python-Password/pulls>
61+
[mail]: <mailto:[email protected]>

docs/SECURITY.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11
# Security Policy
22

33
## Supported Versions
4-
54
| Version | Supported |
65
| ------- | ------------------ |
6+
| 0.1.0 | :x: |
77
| 0.1.1 | :x: |
88
| 0.1.2 | :white_check_mark: |
9+
| 0.2.0 | :x: |
10+
| 0.2.1 | :white_check_mark: |
911

10-
## Reporting a Vulnerability
12+
## Supported operating systems
13+
For now Python Password is tested only for Windows. Program could be unstable on Linux or OS X.
1114

15+
## Reporting a Vulnerability
1216
If you have encountered an error, please report it in issues section.
1317

14-
I'm working on this project up to 5 times a week,
15-
and I'm looking on GitHub site up to 3-4 times a week,
16-
so I should look at your's issue very fast.
18+
I'm working on this project up to 5 times a week, 0and I'm looking on GitHub site up to 3-4 times a week, so I should
19+
look at your's issue very fast.

0 commit comments

Comments
 (0)