Sharkey/README.md

165 lines
5.2 KiB
Markdown
Raw Normal View History

2017-02-22 13:19:34 +02:00
Misskey
================================
2016-12-29 00:49:51 +02:00
[![][travis-badge]][travis-link]
[![][dependencies-badge]][dependencies-link]
2017-01-24 11:41:07 +02:00
[![][himawari-badge]][himasaku]
[![][sakurako-badge]][himasaku]
2017-02-26 21:02:24 +02:00
[![][mit-badge]][mit]
2017-01-24 11:41:07 +02:00
2016-12-31 06:37:21 +02:00
Welcome!
2017-02-22 13:19:34 +02:00
[Misskey](https://misskey.xyz) is a completely open source,
ultimately sophisticated new type of mini-blog based SNS.
2016-12-29 00:49:51 +02:00
2016-12-29 13:43:33 +02:00
![ss](./resources/ss.jpg)
2017-02-22 13:19:34 +02:00
Key features
--------------------------------
2016-12-31 07:15:37 +02:00
* Automatically updated timeline
2017-02-27 11:16:01 +02:00
* Private messages
2016-12-31 07:15:49 +02:00
* Free 1GB storage
2016-12-31 07:11:31 +02:00
* Mobile device support (smartphone, tablet, etc)
2017-02-28 15:27:26 +02:00
* Web API for Third-party applications
2017-02-27 07:31:38 +02:00
* Twitter integration
2016-12-31 07:11:31 +02:00
2017-01-02 22:28:54 +02:00
and more! You can touch with your own eyes at https://misskey.xyz/.
2016-12-31 07:11:31 +02:00
2017-02-22 13:19:34 +02:00
Setup
--------------------------------
2016-12-31 00:06:38 +02:00
### Dependencies :package:
2016-12-30 19:47:45 +02:00
Please install these softwares.
2017-02-22 13:19:34 +02:00
* *Node.js* and *npm*
2016-12-30 22:25:26 +02:00
* **[MongoDB](https://www.mongodb.com/)**
* **[Redis](https://redis.io/)**
* **[GraphicsMagick](http://www.graphicsmagick.org/)**
2016-12-31 00:06:38 +02:00
#### Optional
2016-12-31 06:05:15 +02:00
* [Elasticsearch](https://www.elastic.co/) - used to provide searching feature instead of MongoDB
2016-12-29 00:49:51 +02:00
2016-12-29 17:23:25 +02:00
### Domains
2016-12-29 00:49:51 +02:00
Misskey requires two domains called the primary domain and the secondary domain.
* The primary domain is used to provide main service of Misskey.
* The secondary domain is used to avoid vulnerabilities such as XSS.
**Ensure that the secondary domain is not a subdomain of the primary domain.**
2017-02-21 00:34:14 +02:00
#### Subdomains
2017-02-22 13:19:34 +02:00
Note that Misskey uses following subdomains:
2017-02-21 00:34:14 +02:00
* **api**.*{primary domain}*
* **auth**.*{primary domain}*
* **about**.*{primary domain}*
* **dev**.*{primary domain}*
* **file**.*{secondary domain}*
2017-02-14 17:44:07 +02:00
2017-02-22 13:19:34 +02:00
### reCAPTCHA tokens
2016-12-30 19:39:46 +02:00
Please visit https://www.google.com/recaptcha/intro/ and generate keys.
2016-12-29 17:23:25 +02:00
2017-02-22 13:19:34 +02:00
Setup with Docker :whale:
--------------------------------
2016-12-30 23:38:14 +02:00
Ensure that the working directory is the repository root directory.
To create misskey image:
2016-12-31 10:33:53 +02:00
2016-12-31 06:00:11 +02:00
`sudo docker build -t misskey ./docker`
2016-12-30 23:38:14 +02:00
To run misskey:
2016-12-31 10:33:53 +02:00
2016-12-30 23:38:14 +02:00
`sudo docker run --rm -i -t -p $PORT:80 -v $(pwd):/root/misskey -v $DBPATH:/data/db misskey`
2016-12-31 10:36:11 +02:00
where `$PORT` is the port used to access Misskey Web from host browser
and `$DBPATH` is the path of MongoDB database on the host for data persistence.
2016-12-30 23:38:14 +02:00
ex: `sudo docker run --rm -i -t -p 80:80 -v $(pwd):/root/misskey -v /data/db:/data/db misskey`
2016-12-31 10:33:53 +02:00
If you want to run misskey in production mode, add `--env NODE_ENV=production` like this:
2016-12-31 10:35:07 +02:00
`sudo docker run --rm -i -t -p 80:80 -v $(pwd):/root/misskey -v /data/db:/data/db --env NODE_ENV=production misskey`
2016-12-31 10:33:53 +02:00
2016-12-31 10:36:11 +02:00
Note that `$(pwd)` is the working directory.
2016-12-30 23:38:14 +02:00
2017-02-28 13:18:51 +02:00
Install
2017-02-22 13:19:34 +02:00
--------------------------------
2017-02-28 13:59:01 +02:00
### Using built code
1. `git clone -b release git://github.com/syuilo/misskey.git`
2017-02-28 14:23:57 +02:00
2. `cd misskey`
3. `npm install`
2017-02-28 13:18:51 +02:00
2017-02-28 13:59:01 +02:00
#### Update
2017-03-01 10:47:22 +02:00
1. `git fetch`
2. `git reset --hard origin/release`
3. `npm install`
2017-02-28 13:59:01 +02:00
### Using source code
1. `git clone -b master git://github.com/syuilo/misskey.git`
2017-02-28 14:23:57 +02:00
2. `cd misskey`
3. `npm install`
4. `npm run build`
2017-02-22 13:19:34 +02:00
2017-02-28 13:59:01 +02:00
#### Update
2017-03-01 10:47:22 +02:00
1. `git pull origin master`
2. `npm install`
3. `npm run build`
2017-02-28 13:59:01 +02:00
2017-02-22 13:19:34 +02:00
Launch
--------------------------------
2017-03-01 10:47:22 +02:00
1. `sudo npm start`
2016-12-29 00:49:51 +02:00
2017-02-28 13:18:51 +02:00
GLHF!
2017-02-22 13:19:34 +02:00
Testing
--------------------------------
Run `npm test` after building
Debugging :bug:
--------------------------------
2017-02-28 14:01:01 +02:00
### Show debug messages
2017-02-28 13:59:15 +02:00
Misskey uses [debug](https://github.com/visionmedia/debug) and the namespace is `misskey:*`.
2017-01-23 11:25:52 +02:00
2017-02-22 13:19:34 +02:00
Contribute
--------------------------------
2016-12-30 20:50:21 +02:00
Do you have feature request or problem with Misskey?
2016-12-31 11:16:27 +02:00
Please create issue to report it if it is about the Misskey implementation itself.
2016-12-30 20:50:21 +02:00
Currently Misskey is missing documents so writing documents would be appreciated.
Pull requests are always welcome.
2017-01-24 07:52:59 +02:00
*We love contributions from anybody.*
2016-12-30 21:02:01 +02:00
2016-12-31 00:09:29 +02:00
[Contribution guide](./CONTRIBUTING.md)
2016-12-30 22:35:23 +02:00
### TODO
2016-12-31 00:15:48 +02:00
* More [tests](./test)!
* More [docs](./docs)!
2017-02-28 13:59:38 +02:00
* More sophisticated code!
2016-12-30 22:35:23 +02:00
2017-02-22 13:19:34 +02:00
Collaborators
------------------------------
2017-03-01 10:02:07 +02:00
| ![syuilo][syuilo-icon] | ![Morisawa Aya][ayamorisawa-icon] | ![otofune][otofune-icon] |
|------------------------|-----------------------------------|---------------------------------|
| [syuilo][syuilo-link] | [Aya Morisawa][ayamorisawa-link] | [Otoha Funabashi][otofune-link] |
2017-01-18 12:40:18 +02:00
2017-02-22 13:19:34 +02:00
Copyright
------------------------------
2017-01-19 13:44:19 +02:00
Misskey is an open-source software licensed under [The MIT License](LICENSE).
2016-12-29 00:49:51 +02:00
[mit]: http://opensource.org/licenses/MIT
[mit-badge]: https://img.shields.io/badge/license-MIT-444444.svg?style=flat-square
[travis-link]: https://travis-ci.org/syuilo/misskey
2017-02-26 18:46:43 +02:00
[travis-badge]: http://img.shields.io/travis/syuilo/misskey/master.svg?style=flat-square
2016-12-29 00:49:51 +02:00
[dependencies-link]: https://gemnasium.com/syuilo/misskey
[dependencies-badge]: https://img.shields.io/gemnasium/syuilo/misskey.svg?style=flat-square
2017-01-24 11:41:07 +02:00
[himasaku]: https://himasaku.net
[himawari-badge]: https://img.shields.io/badge/%E5%8F%A4%E8%B0%B7-%E5%90%91%E6%97%A5%E8%91%B5-1684c5.svg?style=flat-square
[sakurako-badge]: https://img.shields.io/badge/%E5%A4%A7%E5%AE%A4-%E6%AB%BB%E5%AD%90-efb02a.svg?style=flat-square
2017-03-01 10:02:07 +02:00
<!-- Collaborators Info -->
[syuilo-link]: https://syuilo.com
[syuilo-icon]: https://avatars2.githubusercontent.com/u/4439005?v=3&s=70
[ayamorisawa-link]: https://github.com/ayamorisawa
[ayamorisawa-icon]: https://avatars0.githubusercontent.com/u/10798641?v=3&s=70
[otofune-link]: https://github.com/otofune
[otofune-icon]: https://avatars0.githubusercontent.com/u/15062473?v=3&s=70