blob: 0b31cb8e5e4cdce8a48369f31db5404b8de9354a (
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
|
# kanna

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)
* \[ ] [imap wrapper (soonish)](https://www.nylas.com/blog/nylas-imap-therefore-i-am/)
* \[ ] 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)
|