1go-mega
2=======
3
4A client library in go for mega.co.nz storage service.
5
6An implementation of command-line utility can be found at [https://github.com/t3rm1n4l/megacmd](https://github.com/t3rm1n4l/megacmd)
7
8[![Build Status](https://secure.travis-ci.org/t3rm1n4l/go-mega.png?branch=master)](http://travis-ci.org/t3rm1n4l/go-mega)
9
10### What can i do with this library?
11This is an API client library for MEGA storage service. Currently, the library supports the basic APIs and operations as follows:
12  - User login
13  - Fetch filesystem tree
14  - Upload file
15  - Download file
16  - Create directory
17  - Move file or directory
18  - Rename file or directory
19  - Delete file or directory
20  - Parallel split download and upload
21  - Filesystem events auto sync
22  - Unit tests
23
24### API methods
25
26Please find full doc at [https://pkg.go.dev/github.com/t3rm1n4l/go-mega](https://pkg.go.dev/github.com/t3rm1n4l/go-mega)
27
28### Testing
29
30    export MEGA_USER=<user_email>
31    export MEGA_PASSWD=<user_passwd>
32    $ make test
33    go test -v
34    === RUN TestLogin
35    --- PASS: TestLogin (1.90 seconds)
36    === RUN TestGetUser
37    --- PASS: TestGetUser (1.65 seconds)
38    === RUN TestUploadDownload
39    --- PASS: TestUploadDownload (12.28 seconds)
40    === RUN TestMove
41    --- PASS: TestMove (9.31 seconds)
42    === RUN TestRename
43    --- PASS: TestRename (9.16 seconds)
44    === RUN TestDelete
45    --- PASS: TestDelete (3.87 seconds)
46    === RUN TestCreateDir
47    --- PASS: TestCreateDir (2.34 seconds)
48    === RUN TestConfig
49    --- PASS: TestConfig (0.01 seconds)
50    === RUN TestPathLookup
51    --- PASS: TestPathLookup (8.54 seconds)
52    === RUN TestEventNotify
53    --- PASS: TestEventNotify (19.65 seconds)
54    PASS
55    ok  github.com/t3rm1n4l/go-mega68.745s
56
57### TODO
58  - Implement APIs for public download url generation
59  - Implement download from public url
60  - Add shared user content management APIs
61  - Add contact list management APIs
62
63### License
64
65MIT
66