No Description

Yuki Takei 8b4d00daaa update docs 7 years ago
.github d1f0f9ec84 Revert "GitBook: [master] 12 pages modified" 7 years ago
.vscode 1338c63415 update .vscode/settings.json 7 years ago
bin 3d22a381c4 fix lint errors 8 years ago
config 3ab0f6b2ee GC-590: use switchery 7 years ago
lib 02679c0014 modify icons 7 years ago
local_modules 3665addacb clean code 7 years ago
public 98d186288d modify webpack output settings 7 years ago
resource 594e16fa66 BugFix: the condition for showing cheatsheet 7 years ago
test 8c0774013d changed CI 7 years ago
tmp b875cefd69 add tmp/plugins dir 9 years ago
.babelrc 92b1603939 add babel-plugin-transform-runtime to use async/await on client-side 7 years ago
.editorconfig 2d42c72e58 add .editorconfig 9 years ago
.eslintignore d00f8ac763 fix lint errors 8 years ago
.eslintrc.js 6b5fea4238 add no-var rule to eslint 7 years ago
.gitignore b51b0c5b93 update .gitignore 7 years ago
.node-dev.json 806de824ef ensure that node-dev ignores manifest.json 7 years ago
CHANGES.md 8b4d00daaa update docs 7 years ago
LICENSE 282f6c3101 Update LICENSE 8 years ago
Procfile dbc71db496 fix Procfile 8 years ago
README.md 81243e8449 Update README.md 7 years ago
THIRD-PARTY-NOTICES.md 8f53061bef Add Apache License 2.0 Notice 7 years ago
app.js b2296f2b04 fix error handling 8 years ago
app.json a507cc6185 add description 7 years ago
package.json 4c5bd7b716 :+1: version and update docs 7 years ago
wercker.yml a12156df71 set MONGO_URL when build-prod step runs 8 years ago
yarn.lock c6cc82ee6d update libs 7 years ago

README.md

Demo Site

GROWI

wercker status dependencies status devDependencies Status docker pulls

Features

Quick Start for Production

Using Heroku

  1. Go to https://heroku.com/deploy
  2. (Optional) Input INSTALL_PLUGINS to install plugins

Using docker-compose

git clone https://github.com/weseek/growi-docker-compose.git growi
cd growi
docker-compose up

See also weseek/growi-docker-compose

On-premise

Migration Guide from Crowi is here.

Dependencies

  • node 8.x (DON'T USE 9.x)
  • npm 5.x
  • yarn
  • MongoDB 3.x

See confirmed versions.

Optional Dependencies

How to start

Build and run the app

git clone https://github.com/weseek/growi.git
cd growi
yarn
MONGO_URI=mongodb://MONGO_HOST:MONGO_PORT/growi npm start

DO NOT USE npm install, use yarn instead.

If you launch growi with ElasticSearch, add environment variables before npm start like following:

export MONGO_URI=mongodb://MONGO_HOST:MONGO_PORT/growi
export ELASTICSEARCH_URI=http://ELASTICSEARCH_HOST:ELASTICSEARCH_PORT/growi
npm start

For more info, see Developers Guide and Crowi documents.

Command details

|command|desc| |--|--| |npm run build:prod|Build the client| |npm run server:prod|Launch the server| |npm start|Invoke npm run build:prod and npm run server:prod|

How to upgrade

git pull
yarn
npm start

How to install plugins

  • Stop server if server is running
  • yarn add to install plugin or npm install
  • npm start to build client app and start server

Examples

yarn add growi-plugin-lsx
npm start

For more info, see Developers Guide on Wiki.

Environment Variables

  • Required
    • MONGO_URI: URI to connect to MongoDB.
  • Option
    • NODE_ENV: production OR development.
    • PORT: Server port. default: 3000
    • ELASTICSEARCH_URI: URI to connect to Elasticearch.
    • REDIS_URI: URI to connect to Redis (use it as a session store instead of MongoDB).
    • PLANTUML_URI: URI to connect to PlantUML server.
    • BLOCKDIAG_URI: URI to connect to blockdiag server.
    • PASSWORD_SEED: A password seed used by password hash generator.
    • SECRET_TOKEN: A secret key for verifying the integrity of signed cookies.
    • SESSION_NAME: The name of the session ID cookie to set in the response by Express. default: connect.sid
    • FILE_UPLOAD: aws (default), local, none
  • Option (Overwritable in admin page)
    • OAUTH_GOOGLE_CLIENT_ID: Google API client id for OAuth login
    • OAUTH_GOOGLE_CLIENT_SECRET: Google API client secret for OAuth login
    • OAUTH_GOOGLE_CALLBACK_URI: Google API callback URI for OAuth login (Set https://${growi.host}/passport/google/callback)
    • OAUTH_GITHUB_CLIENT_ID: GitHub API client id for OAuth login
    • OAUTH_GITHUB_CLIENT_SECRET: GitHub API client secret for OAuth login
    • OAUTH_GITHUB_CALLBACK_URI: GitHub API callback URI for OAuth login (Set https://${growi.host}/passport/github/callback)

Documentation

Contribution

For development

Build and Run the app

  1. clone this repository
  2. yarn to install all dependencies
    • DO NOT USE npm install
  3. npm run build to build client app
  4. npm run server to start the dev server
  5. Access http://0.0.0.0:3000

Found a Bug?

If you found a bug in the source code, you can help us by submitting an issue to our GitHub Repository. Even better, you can submit a Pull Request with a fix.

Missing a Feature?

You can request a new feature by submitting an issue to our GitHub Repository. If you would like to implement a new feature, firstly please submit the issue with your proposal to make sure we can confirm it. Please clarify what kind of change you would like to propose.

  • For a Major Feature, firstly open an issue and outline your proposal so it can be discussed. It also allows us to coordinate better, prevent duplication of work and help you to create the change so it can be successfully accepted into the project.
  • Small Features can be created and directly submitted as a Pull Request.

Language

You can write issues and PRs in English or Japanese.

Discussion

If you have questions or suggestions, you can join our Slack team and talk about anything, anytime.

License

  • The MIT License (MIT)
  • See LICENSE file.