aboutsummaryrefslogtreecommitdiff
path: root/readme.md
blob: b6ecdc631c058f3f2d76c3da73c9dbddd35e8ea6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# kanna

![salt](/docs/src/salt.png)

because the internet needs rewriting

security project to ~~learn client and server encryption~~ mail & advanced requests

## hosting

### initial (needed) files

create generic keys `openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ./certs/selfsigned.key -out ./certs/selfsigned.crt`, or insert which ever ones to `./certs/selfsigned.key` and to `./certs/selfsigned.crt` respectively

---

### running

dependencies:

- ts-node |`npm i -g ts-node`
- package.json | `npm i`
- development (optional)
  - nodemon | `npm i -g nodemon`


#### windows

main build : `npm start`

dev : `npm run dev`

---

#### \*nix

###### please note, for linux you will need to run this as root (for permission to use these ports, 80,443)

main build : `sudo ts-node .`

dev : `sudo nodemon .`


---

[gitea](https://git.disroot.org/grantsquires/kanna-site) | [github](https://github.com/squiresgrant/kanna-site)

## todo

- [ ] add extra pages
  - [ ] home page (quick links, etc)
  - [ ] mail
    - [ ] allow for automation (ie, auto reply)
  - [ ] forums
  - [ ] storage
    - [ ] viewer for images
    - [ ] viewer for docs
  - [ ] login
- [ ] performance related
  - [ ] store all listeners in array and kill
  - [ ] go through all html files, clean up code
- [ ] increase initiation vector (IV) size

## currently

- [x] learning how mail works
  - [ ] toggle plaintext/html emails
  - [ ] option to markdownify email
  - [ ] write md emails, send as html
  - [ ] sexify
  - [ ] settings.json
  - [ ] make mail prettier
  - [ ] dont accept old login keys
  - [ ] add functionality
    - [x] loading screen
    - [x] storage for quicker (initial)loading
    - [x] delete
    - [ ] send
    - [ ] reply
    - [ ] draft
    - [ ] forward
    - [ ] sender info
  - [ ] allow for email account adding
  - [ ] docs
  - [x] extra pages
    - [x] 404 page
  - [ ] sub domains
    - [ ] ughh hate sub domains
  - [ ] make my own libs
    - [ ] encryption (md5 hashing, rsa, and aes)
  - [ ] add aliases that are used in cookies and randomly gen.
    - [ ] also server side hash to check/verify the alias  
  - [ ] more sexy gradients (everywhere)
  - [ ] lower verbosity (and options to change it)
  - [ ] move all dependencies to local ones
  - [ ] check for permissions on what ports to open

### issues 

  - [x] storage not saving
  - [ ] check for login key cookie on page load

FeMail (iron mail)