.github | ||
.travis | ||
assets | ||
docker | ||
docs | ||
elasticsearch | ||
locales | ||
src | ||
test | ||
tools | ||
webpack | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
CONTRIBUTING.md | ||
gulpfile.ts | ||
jsconfig.json | ||
LICENSE | ||
package.json | ||
README.md | ||
swagger.js | ||
tsconfig.json | ||
tslint.json |
Misskey is a completely open source, ultimately sophisticated new type of mini-blog based SNS.
Key features
- Automatically updated timeline
- Private messages
- Free 1GB storage
- Mobile device support (smartphone, tablet, etc)
- Web API for third-party applications
- Twitter integration
and more! You can touch with your own eyes at https://misskey.xyz/.
Setup
Dependencies 📦
Please install these softwares.
- Node.js and npm
- MongoDB
- Redis
- GraphicsMagick
Optional
- Elasticsearch - used to provide searching feature instead of MongoDB
Domains
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.
Subdomains
Note that Misskey uses following subdomains:
- api.{primary domain}
- auth.{primary domain}
- about.{primary domain}
- dev.{primary domain}
- file.{secondary domain}
reCAPTCHA tokens
Please visit https://www.google.com/recaptcha/intro/ and generate keys.
Setup with Docker 🐳
Ensure that the working directory is the repository root directory.
To create misskey image:
sudo docker build -t misskey ./docker
To run misskey:
sudo docker run --rm -i -t -p $PORT:80 -v $(pwd):/root/misskey -v $DBPATH:/data/db misskey
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.
ex: sudo docker run --rm -i -t -p 80:80 -v $(pwd):/root/misskey -v /data/db:/data/db misskey
If you want to run misskey in production mode, add --env NODE_ENV=production
like this:
sudo docker run --rm -i -t -p 80:80 -v $(pwd):/root/misskey -v /data/db:/data/db --env NODE_ENV=production misskey
Note that $(pwd)
is the working directory.
Install
Using built code
We have official release of Misskey. The built code is automatically pushed to https://github.com/syuilo/misskey/tree/release after the CI test succeeds.
git clone -b release git://github.com/syuilo/misskey.git
cd misskey
npm install
Update
git fetch
git reset --hard origin/release
npm install
Using source code
If you want to build Misskey manually, you can do it via build command after download source code of Misskey and install dependencies.
git clone -b master git://github.com/syuilo/misskey.git
cd misskey
npm install
npm run build
Update
git pull origin master
npm install
npm run build
Launch
Just sudo npm start
. GLHF!
Testing
Run npm test
after building
Debugging 🐛
Show debug messages
Misskey uses debug and the namespace is misskey:*
.
Contribution
Please see Contribution guide.
Collaborators
syuilo | Aya Morisawa | Otoha Funabashi |
Copyright
Misskey is an open-source software licensed under The MIT License.