mirror of https://github.com/wekan/wekan
Merge branch 'main' of https://github.com/walster001/wekan-atlanz
commit
62b13cc343
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,204 @@ |
||||
## About markdown changes |
||||
|
||||
Wekan v4.29 changes markdown rendering from [marked](https://github.com/markedjs/marked) to [markdown-it](https://github.com/markdown-it/markdown-it). |
||||
|
||||
## About emoji |
||||
|
||||
With markdown-it, also [markdown-it-emoji](https://github.com/markdown-it/markdown-it-emoji) plugin has been added, supporting [full list of GitHub emojis](https://github.com/markdown-it/markdown-it-emoji/blob/master/lib/data/full.json). |
||||
|
||||
Example emoji code, that you can add for example to card name, card description etc: |
||||
``` |
||||
:rainbow: :thumbsup: :100: |
||||
``` |
||||
That shows emojis :rainbow: :thumbsup: :100: |
||||
|
||||
## About other markdown-it plugins |
||||
|
||||
For markdown-it, there are also other [syntax extensions](https://github.com/markdown-it/markdown-it#syntax-extensions) where some are listed at that markdown-it page, and [others at npmjs.com](https://www.npmjs.org/browse/keyword/markdown-it-plugin). |
||||
|
||||
For example, how to get some [mermaid plugin](https://www.npmjs.com/search?q=markdown-it-mermaid) working so that some syntax works for https://mermaid-js.github.io/mermaid/ ? |
||||
|
||||
## How you could add another plugin |
||||
|
||||
Using newest Ubuntu amd64: |
||||
|
||||
# Meteor 2 |
||||
|
||||
### 1. Install git and configure it |
||||
``` |
||||
sudo apt -y install git |
||||
|
||||
git config --global user.name "Yourfirstname Yourlastname" |
||||
|
||||
git config --global user.email email-address-you-use-at-github@example.com |
||||
|
||||
git config --global push.default simple |
||||
|
||||
nano .ssh/config |
||||
``` |
||||
There add your User (GitHub username) and IdentityFile (Your ssh private key. Not public key that has .pub). |
||||
For indentation, use one tab. |
||||
``` |
||||
Host * |
||||
IdentitiesOnly=yes |
||||
|
||||
Host github.com |
||||
Hostname github.com |
||||
User xet7 |
||||
IdentityFile ~/.ssh/id_xet7ed |
||||
``` |
||||
Save and Exit with Ctrl-o Enter Ctrl-x Enter |
||||
|
||||
If you do not have ssh key, create it: |
||||
``` |
||||
ssh-keygen |
||||
``` |
||||
And press Enter about 3 times, until you have private key at `~/.ssh/id_rsa` and public key at `~/.ssh/id_rsa.pub` |
||||
|
||||
Add public key `.pub` to your github account web interface. |
||||
|
||||
Add path to Meteor: |
||||
``` |
||||
nano .bashrc |
||||
``` |
||||
There at bottom add: |
||||
``` |
||||
export PATH=~/.meteor:$PATH |
||||
``` |
||||
Save and Exit with Ctrl-o Enter Ctrl-x Enter |
||||
|
||||
### 2. Create fork of `https://github.com/wekan/wekan` at GitHub web page |
||||
|
||||
``` |
||||
mkdir repos |
||||
|
||||
cd repos |
||||
|
||||
git clone git@github.com:YourGithubUsername/wekan.git |
||||
|
||||
cd wekan |
||||
``` |
||||
### 3. Select option 1 to install dependencies, and then Enter. |
||||
``` |
||||
./rebuild-wekan.sh |
||||
|
||||
1 |
||||
|
||||
./rebuild-wekan.sh |
||||
|
||||
2 |
||||
|
||||
./rebuild-wekan.sh |
||||
|
||||
3 |
||||
``` |
||||
That does: 1 install dependencies, 2 builds wekan, 3 starts wekan in development mode with command `meteor`, so it can detect if some file changes and try to rebuild automatically and reload webbroser. But, still sometimes, it may need stopping with Ctrl-c and full build with option 2. |
||||
|
||||
And then [register and login](Adding-users) at http://localhost:4000 |
||||
|
||||
### OPTIONAL, NOT NEEDED: 5. Add new plugin package |
||||
``` |
||||
meteor npm install markdown-it-something --save |
||||
``` |
||||
|
||||
Edit file `wekan/packages/markdown/src-integration.js` and add using that new package, using code example from that new plugin page, or similar like emoji plugin was added. |
||||
|
||||
### 7. Test |
||||
|
||||
Test does that new plugin syntax work, for example in card title, card description etc on other input fields. |
||||
|
||||
### 8. If it works, create pull request |
||||
|
||||
If normal markdown, emoji, and your new added plugin syntax all work, commit your changes: |
||||
``` |
||||
git add --all |
||||
|
||||
git commit -m "Added plugin markdown-it-something." |
||||
|
||||
git push |
||||
``` |
||||
And then at your GitHub for `https://github.com/YOUR-GITHUB-USERNAME/wekan` click `Create pull request`. |
||||
|
||||
# Meteor 3 |
||||
|
||||
At 2024-06-26, it looks like from https://nodejs.org/en that Node.js LTS version is 20.15.0 , so change to newest Node.js LTS, delete old Meteor: |
||||
``` |
||||
sudo n 20.15.0 |
||||
|
||||
sudo npm -g install npm |
||||
|
||||
cd |
||||
|
||||
rm -rf .meteor |
||||
``` |
||||
Check how to install newest Meteor from Meteor 3 PR at https://github.com/meteor/meteor/pull/13163 , for example: |
||||
``` |
||||
npx meteor@rc |
||||
``` |
||||
Check what branches there are: |
||||
``` |
||||
cd repos/wekan |
||||
|
||||
git branch -a |
||||
``` |
||||
Change to Meteor 3 branch: |
||||
``` |
||||
git checkout feature-meteor3 |
||||
``` |
||||
Build wekan: |
||||
``` |
||||
./rebuild-wekan.sh |
||||
|
||||
2 |
||||
``` |
||||
If there are errors, try to fix them. |
||||
|
||||
Or try to run wekan: |
||||
``` |
||||
./rebuild-wekan.sh |
||||
|
||||
3 |
||||
``` |
||||
# Updating |
||||
|
||||
There are usually updates both for npm packages and Meteor |
||||
|
||||
Updating npm packages: |
||||
``` |
||||
npm update |
||||
``` |
||||
Checking for vulnerable packages: |
||||
``` |
||||
npm audit |
||||
``` |
||||
Fixing vulnerable npm packages by updating to newer packages: |
||||
``` |
||||
npm audit fix |
||||
``` |
||||
If that did not help, use force: |
||||
``` |
||||
npm audit fix --force |
||||
``` |
||||
If that did not help, read links from that `npm audit` command did show, remove deprecated dependencies, update to other maintained dependencies. |
||||
|
||||
Updating to next Meteor release: |
||||
``` |
||||
meteor update |
||||
``` |
||||
Updating to specific Meteor release: |
||||
``` |
||||
meteor update --release METEOR@3.0-rc.4 |
||||
``` |
||||
Trying to update all Meteor packages: |
||||
``` |
||||
meteor update --release METEOR@3.0-rc.4 --all-packages |
||||
``` |
||||
Allowing incompatible updates, that may sometime work: |
||||
``` |
||||
meteor update --release METEOR@3.0-rc.4 --all-packages --allow-incompatible-update |
||||
``` |
||||
If you are changing Meteor and Node.js versions, you may need to reset Meteor: |
||||
``` |
||||
meteor reset |
||||
``` |
||||
Or alternatively, delete wekan repo (if you did not need any changes you made), and clone wekan repo again, and then build etc. |
@ -1,18 +1,71 @@ |
||||
## Upgrading Meteor |
||||
|
||||
- Disclaimer: |
||||
- These are opinions about upgrading, from xet7, maintainer of WeKan Open Source kanban https://wekan.github.io |
||||
- xet7 thinks, that it is good to keep using current frontend and backend frameworks, upgrade them when possible. If there is any problems, ask at https://forums.meteor.com |
||||
- xet7 thinks, that upgrading to newest Meteor 2 and Meteor 3 is being made more easier all the time, when new dependencies become available, any bugs are fixed, etc. So it is good to make all possible upgrading steps available. |
||||
- Upgrade to newest 2.14 https://guide.meteor.com/2.14-migration . Currently xet7 is using newest 2.14.1-beta.0 in production release of WeKan https://forums.meteor.com/t/meteor-v2-14-1-beta-0-is-out/61142 |
||||
- Prepare for 3.0 https://guide.meteor.com/3.0-migration |
||||
- Migrate Async |
||||
- Helper tool https://forums.meteor.com/t/blaze-async-migration-helper-babel-plugin-tracker-async-enhance-for-the-client-side-released/60842 |
||||
- https://guide.meteor.com/prepare-meteor-3.0 |
||||
- Look at progress of migrated packages https://forums.meteor.com/t/looking-for-help-migrating-packages-to-meteor-3-0/60985 |
||||
## Videos about upgrading to Meteor 3 |
||||
|
||||
- Storyteller |
||||
- 2024-07-15: WeKan Upgrades https://www.youtube.com/watch?v=Zjb3m9JsAD0 |
||||
- 2024-07-08: Upgrading Meteor examples https://www.youtube.com/watch?v=jzWXxOe93t4 |
||||
- Upcoming and past: https://www.youtube.com/@storytellercz/streams |
||||
- React.js |
||||
- WeKan uses Blaze and Jade, not React. |
||||
- 2024-08-02: |
||||
- https://www.youtube.com/watch?v=NnT7AbVMnj4 |
||||
- https://thenewstack.io/after-a-decade-of-react-is-frontend-a-post-react-world-now/ |
||||
- https://thenewstack.io/pivoting-from-react-to-native-dom-apis-a-real-world-example/ |
||||
- https://thenewstack.io/how-web-components-are-used-at-github-and-salesforce/ |
||||
- https://devclass.com/2024/07/22/react-community-splitting-into-full-stack-and-client-only-camps-suggests-survey/ |
||||
- https://news.ycombinator.com/item?id=41068685 |
||||
- 2024-07-10: Storyteller at React Wroclaw Meetup, talking about Meteor.js and React: https://www.youtube.com/watch?v=4dnM6bXZCz4&t=741s |
||||
- How A Small Team of Developers Created React at Facebook | React.js: The Documentary https://www.youtube.com/watch?v=8pDqJVdNa44 |
||||
https://www.youtube.com/watch?v=8pDqJVdNa44 |
||||
- Meteor Dispatches Podcast |
||||
- 46: 2024-07-12: Packages you need in every app https://www.youtube.com/watch?v=S2YkZfKN0DI |
||||
- 25: 2024-02-09: WeKan Security https://www.youtube.com/watch?v=zic-h8jG6F8 |
||||
- 16: 2023-12-08: WeKan interview https://www.youtube.com/watch?v=ke-mbnZM3zE |
||||
- Upcoming and past: https://www.youtube.com/@meteorjscommunity/streams |
||||
- Playlists: https://www.youtube.com/@meteorjscommunity/playlists |
||||
- Some recent also had info, how to make dependencies compatible with both Meteor 2 and Meteor 3 |
||||
- Add Eslint 3 and fix anything found |
||||
- https://youtu.be/rFjNNNc_7-E |
||||
- https://www.youtube.com/watch?v=rFjNNNc_7-E |
||||
- https://github.com/quavedev/eslint-plugin |
||||
- https://github.com/quavedev/meteor-template/pull/8 |
||||
- Watch Meteor Dispatches etc Podcasts https://www.youtube.com/@meteorjscommunity/playlists |
||||
- Some recent also had info, how to make dependencies compatible with both Meteor 2 and Meteor 3 |
||||
|
||||
## Upgrading to Meteor 3 |
||||
|
||||
- Meteor 3 migration guide: https://v3-migration-docs.meteor.com ( older pages at https://guide.meteor.com/3.0-migration or https://guide.meteor.com/prepare-meteor-3.0 ) |
||||
- Look at progress of migrated packages https://forums.meteor.com/t/looking-for-help-migrating-packages-to-meteor-3-0/60985 |
||||
- Migrate from Fibers (works only at Meteor 2 and Node.js 14) to Async/Await (works with Meteor 3 and Node.js 20) |
||||
- Helper tool https://forums.meteor.com/t/blaze-async-migration-helper-babel-plugin-tracker-async-enhance-for-the-client-side-released/60842 |
||||
- Info how Async/Await works, from Storyteller: https://github.com/wekan/wekan/wiki/AsyncAwait |
||||
- Forums posts about migrating: https://forums.meteor.com |
||||
- ( Older version upgrade to newest 2.14 https://guide.meteor.com/2.14-migration ) |
||||
|
||||
## Removing unused files |
||||
|
||||
From Meteor Discord chat from someone: |
||||
|
||||
> Nice tool that I found out about today. I was able to remove 58 unused files, functions, exports, types and dependencies 😄 |
||||
> |
||||
> https://knip.dev |
||||
|
||||
## Lint |
||||
|
||||
From Meteor Discord chat from someone: |
||||
|
||||
> We started using https://biomejs.dev to replace eslint and prettier on Galaxy 2, and it's been amazing. It's speedy, easy to configure, and has fewer packages to care about. |
||||
> |
||||
> Just sharing it here in case someone has never heard about it before |
||||
|
||||
|
||||
## Building WeKan |
||||
|
||||
- https://github.com/wekan/wekan/wiki/Emoji |
||||
- Docs: https://github.com/wekan/wekan/tree/main/docs |
||||
|
||||
## Similar technology |
||||
|
||||
- https://en.wikipedia.org/wiki/JavaScript_engine |
||||
- https://en.wikipedia.org/wiki/Single-page_application |
||||
- https://en.wikipedia.org/wiki/Web_framework |
||||
- https://en.wikipedia.org/wiki/Progressive_web_app |
||||
- https://en.wikipedia.org/wiki/Web_2.0 |
||||
- https://en.wikipedia.org/wiki/Meteor_(web_framework) |
||||
- https://en.wikipedia.org/wiki/Next.js |
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue