aboutsummaryrefslogtreecommitdiff
path: root/readme.md
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

![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)
        *   \[ ] [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)