diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b002e54..40f7355 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,30 +1,30 @@ # Contributing When contributing to this repository, please first discuss the change you wish to make via issue, -email, or any other method with the owners of this repository before making a change. +email, or any other method with the owners of this repository before making a change. Please note we have a code of conduct, please follow it in all your interactions with the project. ## Pull Request Process 1. Ensure you signed all your commits with Developer Certificate of Origin (DCO). -2. Ensure any install or build dependencies are removed before the end of the layer when doing a +2. Ensure any install or build dependencies are removed before the end of the layer when doing a build. -3. Update the README.md with details of changes to the interface, this includes new environment +3. Update the README.md with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations and container parameters. 4. Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/). -5. You may merge the Pull Request in once you have the sign-off of two other developers, or if you +5. You may merge the Pull Request in once you have the sign-off of two other developers, or if you do not have permission to do that, you may request the second reviewer to merge it for you. ## Contributor Code of Conduct -As contributors and maintainers of this project, and in the interest of fostering an open and -welcoming community, we pledge to respect all people who contribute through reporting issues, -posting feature requests, updating documentation, submitting pull requests or patches, and other +As contributors and maintainers of this project, and in the interest of fostering an open and +welcoming community, we pledge to respect all people who contribute through reporting issues, +posting feature requests, updating documentation, submitting pull requests or patches, and other activities. -We are committed to making participation in this project a harassment-free experience for everyone, -regardless of level of experience, gender, gender identity and expression, sexual orientation, +We are committed to making participation in this project a harassment-free experience for everyone, +regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, or nationality. Examples of unacceptable behavior by participants include: @@ -37,26 +37,26 @@ Examples of unacceptable behavior by participants include: permission * Other unethical or unprofessional conduct. -Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, -code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. By -adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently -applying these principles to every aspect of managing this project. Project maintainers who do not +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, +code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. By +adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently +applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team. -This code of conduct applies both within project spaces and in public spaces when an individual is +This code of conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. -Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers. -This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), -version 1.2.0, available at +This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), +version 1.2.0, available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/) ### Sign your work We use the Developer Certificate of Origin (DCO) as a additional safeguard -for the HackMD project. This is a well established and widely used +for the CodiMD project. This is a well established and widely used mechanism to assure contributors have confirmed their right to license their contribution under the project's license. Please read [contribute/developer-certificate-of-origin][dcofile]. diff --git a/README.md b/README.md index 095cc41..4255e71 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,18 @@ -HackMD Community Edition +CodiMD === [![Standard - JavaScript Style Guide][standardjs-image]][standardjs-url] [![Join the chat at https://gitter.im/hackmdio/hackmd][gitter-image]][gitter-url] -[![#HackMD on matrix.org][matrix.org-image]][matrix.org-url] +[![#CodiMD on matrix.org][matrix.org-image]][matrix.org-url] [![build status][travis-image]][travis-url] [![version][github-version-badge]][github-release-page] [![Help Contribute to Open Source][codetriage-image]][codetriage-url] [![POEditor][poeditor-image]][poeditor-url] -HackMD lets you create realtime collaborative markdown notes on all platforms. -Inspired by Hackpad, with more focus on speed and flexibility. -Still in the early stage, feel free to fork or contribute to HackMD. +CodiMD lets you create real-time collaborative markdown notes on all platforms. +Inspired by Hackpad, with more focus on speed and flexibility, and build from [HackMD](https://hackmd.io) source code. +Feel free to contribute. Thanks for using! :smile: @@ -27,7 +27,7 @@ Thanks for using! :smile: - [Instructions](#instructions) - [Heroku Deployment](#heroku-deployment) - [Kubernetes](#kubernetes) - - [HackMD by docker container](#hackmd-by-docker-container) + - [CodiMD by docker container](#codimd-by-docker-container) - [Upgrade](#upgrade) - [Native setup](#native-setup) - [Configuration](#configuration) @@ -60,7 +60,7 @@ Thanks for using! :smile: - Node.js 6.x or up (test up to 7.5.0) - Database (PostgreSQL, MySQL, MariaDB, SQLite, MSSQL) use charset `utf8` - npm (and its dependencies, especially [uWebSockets](https://github.com/uWebSockets/uWebSockets#nodejs-developers), [node-gyp](https://github.com/nodejs/node-gyp#installation)) -- For **building** HackMD we recommend to use a machine with at least **2GB** RAM +- For **building** CodiMD we recommend to use a machine with at least **2GB** RAM ### Instructions @@ -73,9 +73,9 @@ Thanks for using! :smile: ## Heroku Deployment -You can quickly setup a sample Heroku HackMD application by clicking the button below. +You can quickly setup a sample Heroku CodiMD application by clicking the button below. -[![Deploy on Heroku](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/hackmdio/hackmd/tree/master) +[![Deploy on Heroku](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/hackmdio/codimd/tree/master) If you deploy it without the button, keep in mind to use the right buildpacks. For details check `app.json`. @@ -83,10 +83,10 @@ If you deploy it without the button, keep in mind to use the right buildpacks. F To install use `helm install stable/hackmd`. -For all further details, please check out the offical HackMD [K8s helm chart](https://github.com/kubernetes/charts/tree/master/stable/hackmd). +For all further details, please check out the offical CodiMD [K8s helm chart](https://github.com/kubernetes/charts/tree/master/stable/hackmd). -## HackMD by docker container -[![Try in PWD](https://cdn.rawgit.com/play-with-docker/stacks/cff22438/assets/images/button.png)](http://play-with-docker.com?stack=https://github.com/hackmdio/docker-hackmd/raw/master/docker-compose.yml&stack_name=hackmd) +## CodiMD by docker container +[![Try in PWD](https://cdn.rawgit.com/play-with-docker/stacks/cff22438/assets/images/button.png)](http://play-with-docker.com?stack=https://github.com/hackmdio/docker-hackmd/raw/master/docker-compose.yml&stack_name=codimd) **Debian-based version:** @@ -98,11 +98,11 @@ For all further details, please check out the offical HackMD [K8s helm chart](h [![alpine](https://images.microbadger.com/badges/version/hackmdio/hackmd:alpine.svg)](https://microbadger.com/images/hackmdio/hackmd:alpine "Get your own version badge on microbadger.com") [![](https://images.microbadger.com/badges/image/hackmdio/hackmd:alpine.svg)](https://microbadger.com/images/hackmdio/hackmd:alpine "Get your own image badge on microbadger.com") -The easiest way to setup HackMD using docker are using the following three commands: +The easiest way to setup CodiMD using docker are using the following three commands: ```console git clone https://github.com/hackmdio/docker-hackmd.git -cd docker-hackmd +cd docker-codimd docker-compose up ``` Read more about it in the [docker repository…](https://github.com/hackmdio/docker-hackmd) @@ -111,14 +111,14 @@ Read more about it in the [docker repository…](https://github.com/hackmdio/doc ## Native setup -If you are upgrading HackMD from an older version, follow these steps: +If you are upgrading CodiMD from an older version, follow these steps: 1. Fully stop your old server first (important) 2. `git pull` or do whatever that updates the files 3. `npm install` to update dependencies 4. Build front-end bundle by `npm run build` (use `npm run dev` if you are in development) 5. Modify the file named `.sequelizerc`, change the value of the variable `url` with your db connection string - For example: `postgres://username:password@localhost:5432/hackmd` + For example: `postgres://username:password@localhost:5432/codimd` 6. Run `node_modules/.bin/sequelize db:migrate`, this step will migrate your db to the latest schema 7. Start your whole new server! @@ -154,10 +154,10 @@ There are some config settings you need to change in the files below. | --------- | ------ | ----------- | | `NODE_ENV` | `production` or `development` | set current environment (will apply corresponding settings in the `config.json`) | | `DEBUG` | `true` or `false` | set debug mode; show more logs | -| `HMD_DOMAIN` | `hackmd.io` | domain name | -| `HMD_URL_PATH` | `hackmd` | sub URL path, like `www.example.com/` | +| `HMD_DOMAIN` | `codimd.org` | domain name | +| `HMD_URL_PATH` | `codimd` | sub URL path, like `www.example.com/` | | `HMD_PORT` | `80` | web app port | -| `HMD_ALLOW_ORIGIN` | `localhost, hackmd.io` | domain name whitelist (use comma to separate) | +| `HMD_ALLOW_ORIGIN` | `localhost, codimd.org` | domain name whitelist (use comma to separate) | | `HMD_PROTOCOL_USESSL` | `true` or `false` | set to use SSL protocol for resources path (only applied when domain is set) | | `HMD_URL_ADDPORT` | `true` or `false` | set to add port on callback URL (ports `80` or `443` won't be applied) (only applied when domain is set) | | `HMD_USECDN` | `true` or `false` | set to use CDN resources or not (default is `true`) | @@ -191,8 +191,8 @@ There are some config settings you need to change in the files below. | `HMD_LDAP_SEARCHBASE` | `o=users,dc=example,dc=com` | LDAP directory to begin search from | | `HMD_LDAP_SEARCHFILTER` | `(uid={{username}})` | LDAP filter to search with | | `HMD_LDAP_SEARCHATTRIBUTES` | `displayName, mail` | LDAP attributes to search with (use comma to separate) | -| `HMD_LDAP_USERIDFIELD` | `uidNumber` or `uid` or `sAMAccountName` | The LDAP field which is used uniquely identify a user on HackMD | -| `HMD_LDAP_USERNAMEFIELD` | Fallback to userid | The LDAP field which is used as the username on HackMD | +| `HMD_LDAP_USERIDFIELD` | `uidNumber` or `uid` or `sAMAccountName` | The LDAP field which is used uniquely identify a user on CodiMD | +| `HMD_LDAP_USERNAMEFIELD` | Fallback to userid | The LDAP field which is used as the username on CodiMD | | `HMD_LDAP_TLS_CA` | `server-cert.pem, root.pem` | Root CA for LDAP TLS in PEM format (use comma to separate) | | `HMD_LDAP_PROVIDERNAME` | `My institution` | Optional name to be displayed at login form indicating the LDAP provider | | `HMD_SAML_IDPSSOURL` | `https://idp.example.com/sso` | authentication endpoint of IdP. for details, see [guide](docs/guides/auth.md#saml-onelogin). | @@ -235,7 +235,7 @@ There are some config settings you need to change in the files below. | --------- | ------ | ----------- | | `debug` | `true` or `false` | set debug mode, show more logs | | `domain` | `localhost` | domain name | -| `urlPath` | `hackmd` | sub URL path, like `www.example.com/` | +| `urlPath` | `codimd` | sub URL path, like `www.example.com/` | | `port` | `80` | web app port | | `allowOrigin` | `['localhost']` | domain name whitelist | | `useSSL` | `true` or `false` | set to use SSL server (if `true`, will auto turn on `protocolUseSSL`) | @@ -249,9 +249,9 @@ There are some config settings you need to change in the files below. | `allowFreeURL` | `true` or `false` | set to allow new note creation by accessing a nonexistent note URL | | `defaultPermission` | `freely`, `editable`, `limited`, `locked`, `protected` or `private` | set notes default permission (only applied on signed users) | | `dbURL` | `mysql://localhost:3306/database` | set the db URL; if set, then db config (below) won't be applied | -| `db` | `{ "dialect": "sqlite", "storage": "./db.hackmd.sqlite" }` | set the db configs, [see more here](http://sequelize.readthedocs.org/en/latest/api/sequelize/) | +| `db` | `{ "dialect": "sqlite", "storage": "./db.codimd.sqlite" }` | set the db configs, [see more here](http://sequelize.readthedocs.org/en/latest/api/sequelize/) | | `sslKeyPath` | `./cert/client.key` | SSL key path (only need when you set `useSSL`) | -| `sslCertPath` | `./cert/hackmd_io.crt` | SSL cert path (only need when you set `useSSL`) | +| `sslCertPath` | `./cert/codimd_io.crt` | SSL cert path (only need when you set `useSSL`) | | `sslCAPath` | `['./cert/COMODORSAAddTrustCA.crt']` | SSL ca chain (only need when you set `useSSL`) | | `dhParamPath` | `./cert/dhparam.pem` | SSL dhparam path (only need when you set `useSSL`) | | `tmpPath` | `./tmp/` | temp directory path | @@ -304,7 +304,7 @@ There are some config settings you need to change in the files below. ## Structure ```text -hackmd/ +codimd/ ├── tmp/ --- temporary files ├── docs/ --- document files ├── lib/ --- server libraries @@ -330,15 +330,15 @@ See more at [http://operational-transformation.github.io/](http://operational-tr [gitter-image]: https://badges.gitter.im/Join%20Chat.svg [gitter-url]: https://gitter.im/hackmdio/hackmd?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge -[matrix.org-image]: https://img.shields.io/badge/Matrix.org-%23HackMD@matrix.org-green.svg -[matrix.org-url]: https://riot.im/app/#/room/#hackmd:matrix.org -[travis-image]: https://travis-ci.org/hackmdio/hackmd.svg?branch=master -[travis-url]: https://travis-ci.org/hackmdio/hackmd -[github-version-badge]: https://img.shields.io/github/release/hackmdio/hackmd.svg -[github-release-page]: https://github.com/hackmdio/hackmd/releases +[matrix.org-image]: https://img.shields.io/badge/Matrix.org-%23CodiMD@matrix.org-green.svg +[matrix.org-url]: https://riot.im/app/#/room/#codimd:matrix.org +[travis-image]: https://travis-ci.org/hackmdio/codimd.svg?branch=master +[travis-url]: https://travis-ci.org/hackmdio/codimd +[github-version-badge]: https://img.shields.io/github/release/hackmdio/codimd.svg +[github-release-page]: https://github.com/hackmdio/codimd/releases [standardjs-image]: https://cdn.rawgit.com/feross/standard/master/badge.svg [standardjs-url]: https://github.com/feross/standard -[codetriage-image]: https://www.codetriage.com/hackmdio/hackmd/badges/users.svg -[codetriage-url]: https://www.codetriage.com/hackmdio/hackmd +[codetriage-image]: https://www.codetriage.com/hackmdio/codimd/badges/users.svg +[codetriage-url]: https://www.codetriage.com/hackmdio/codimd [poeditor-image]: https://img.shields.io/badge/POEditor-translate-blue.svg [poeditor-url]: https://poeditor.com/join/project/1OpGjF2Jir diff --git a/app.js b/app.js index bfb5a49..a9bd2ec 100644 --- a/app.js +++ b/app.js @@ -234,7 +234,7 @@ process.on('uncaughtException', function (err) { // install exit handler function handleTermSignals () { - logger.info('hackmd has been killed by signal, try to exit gracefully...') + logger.info('CodiMD has been killed by signal, try to exit gracefully...') realtime.maintenance = true // disconnect all socket.io clients Object.keys(io.sockets.sockets).forEach(function (key) { diff --git a/app.json b/app.json index 36877e6..6a6142e 100644 --- a/app.json +++ b/app.json @@ -1,5 +1,5 @@ { - "name": "HackMD", + "name": "CodiMD", "description": "Realtime collaborative markdown notes on all platforms", "keywords": [ "Collaborative", @@ -7,8 +7,8 @@ "Notes" ], "website": "https://hackmd.io", - "repository": "https://github.com/hackmdio/hackmd", - "logo": "https://github.com/hackmdio/hackmd/raw/master/public/hackmd-icon-1024.png", + "repository": "https://github.com/hackmdio/codimd", + "logo": "https://github.com/hackmdio/codimd/raw/master/public/codimd-icon-1024.png", "success_url": "/", "env": { "BUILD_ASSETS": { diff --git a/bin/setup b/bin/setup index 3edffc4..122cb7a 100755 --- a/bin/setup +++ b/bin/setup @@ -33,11 +33,10 @@ BUILD_ASSETS=false npm install cat << EOF -Edit the following config file to setup hackmd server and client. -Read more info at https://github.com/hackmdio/hackmd#configuration-files +Edit the following config file to setup CodiMD server and client. +Read more info at https://github.com/hackmdio/codimd#configuration-files -* config.json -- server config -* public/js/config.js -- client config +* config.json -- CodiMD config * .sequelizerc -- db config EOF diff --git a/config.json.example b/config.json.example index e07052b..1f2ec3d 100644 --- a/config.json.example +++ b/config.json.example @@ -11,7 +11,7 @@ }, "db": { "dialect": "sqlite", - "storage": "./db.hackmd.sqlite" + "storage": "./db.codimd.sqlite" } }, "production": { @@ -34,7 +34,7 @@ "db": { "username": "", "password": "", - "database": "hackmd", + "database": "codimd", "host": "localhost", "port": "5432", "dialect": "postgres" diff --git a/lib/models/note.js b/lib/models/note.js index 7d8e962..ec7e2b1 100644 --- a/lib/models/note.js +++ b/lib/models/note.js @@ -301,7 +301,7 @@ module.exports = function (sequelize, DataTypes) { return title || 'Untitled' }, generateWebTitle: function (title) { - title = !title || title === 'Untitled' ? 'HackMD - Collaborative markdown notes' : title + ' - HackMD' + title = !title || title === 'Untitled' ? 'CodiMD - Collaborative markdown notes' : title + ' - CodiMD' return title }, extractNoteTags: function (meta, $) { diff --git a/package.json b/package.json index 20920e2..442d00a 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "hackmd", + "name": "CodiMD", "version": "1.1.1-ce", "description": "Realtime collaborative markdown notes on all platforms.", "main": "app.js", @@ -136,7 +136,7 @@ "engines": { "node": ">=6.x <10.x" }, - "bugs": "https://github.com/hackmdio/hackmd/issues", + "bugs": "https://github.com/hackmdio/codimd/issues", "keywords": [ "Collaborative", "Markdown", @@ -151,7 +151,7 @@ ], "repository": { "type": "git", - "url": "https://github.com/hackmdio/hackmd.git" + "url": "https://github.com/hackmdio/codimd.git" }, "devDependencies": { "babel-cli": "^6.18.0", diff --git a/public/hackmd-icon-1024.png b/public/codimd-icon-1024.png similarity index 100% rename from public/hackmd-icon-1024.png rename to public/codimd-icon-1024.png diff --git a/public/docs/features.md b/public/docs/features.md index dc6ddaf..f684ca6 100644 --- a/public/docs/features.md +++ b/public/docs/features.md @@ -3,12 +3,12 @@ Features Introduction === - **HackMD** is a realtime, multi-platform collaborative markdown note editor. + **CodiMD** is a real-time, multi-platform collaborative markdown note editor. This means that you can write notes with other people on your **desktop**, **tablet** or even on the **phone**. You can sign-in via multiple auth providers like **Facebook**, **Twitter**, **GitHub** and many more on the [_homepage_](/). -If you experience any _issues_, feel free to report it on [**GitHub**](https://github.com/hackmdio/hackmd/issues). -Or meet us on [**Matrix.org**](https://riot.im/app/#/room/#hackmd:matrix.org) or [**Gitter**](https://gitter.im/hackmdio/hackmd) for dev-talk and interactive help. +If you experience any _issues_, feel free to report it on [**GitHub**](https://github.com/hackmdio/codimd/issues). +Or meet us on [**Matrix.org**](https://riot.im/app/#/room/#codimd:matrix.org) or [**Gitter**](https://gitter.im/hackmdio/hackmd) for dev-talk and interactive help. **Thank you very much!** Workspace @@ -26,7 +26,7 @@ Workspace Edit: See only the editor. ## Night Mode: -When you are tired of a white screen and like a night mode, click on the little moon and turn on the night view of HackMD. +When you are tired of a white screen and like a night mode, click on the little moon and turn on the night view of CodiMD. The editor view, which is in night mode by default, can also be toggled between night and day view using the the little sun. diff --git a/public/docs/yaml-metadata.md b/public/docs/yaml-metadata.md index d49418f..888345f 100644 --- a/public/docs/yaml-metadata.md +++ b/public/docs/yaml-metadata.md @@ -96,7 +96,7 @@ dir: rtl breaks --- This option means the hardbreaks in the note will be parsed or be ignore. -The original markdown syntax breaks only if you put space twice, but HackMD choose to breaks every time you enter a break. +The original markdown syntax breaks only if you put space twice, but CodiMD choose to breaks every time you enter a break. You can only use whether `true` or `false`. > default: not set (which will be true) @@ -125,7 +125,7 @@ This option allow you to enable Disqus with your shortname. **Example** ```xml -disqus: hackmd +disqus: codimd ``` slideOptions @@ -146,4 +146,4 @@ https://github.com/hakimel/reveal.js/tree/master/css/theme slideOptions: transition: fade theme: white -``` \ No newline at end of file +``` diff --git a/public/js/extra.js b/public/js/extra.js index dbb0f45..d6bbb0c 100644 --- a/public/js/extra.js +++ b/public/js/extra.js @@ -105,9 +105,9 @@ function getTitle (view) { export function renderTitle (view) { let title = getTitle(view) if (title) { - title += ' - HackMD' + title += ' - CodiMD' } else { - title = 'HackMD - Collaborative markdown notes' + title = 'CodiMD - Collaborative markdown notes' } return title } diff --git a/public/views/hackmd/header.ejs b/public/views/hackmd/header.ejs index 21b632c..8fc050b 100644 --- a/public/views/hackmd/header.ejs +++ b/public/views/hackmd/header.ejs @@ -13,7 +13,7 @@ - HackMD + CodiMD