-
Notifications
You must be signed in to change notification settings - Fork 74
Make tasks exportable as Markdown #185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
All tasks can now be bundled together to create one big document of tasks that can be submitted as a writeup for a CTF. This saves lots of time copying the tasks in a document one by one. The user can choose to export all tasks or only the solved tasks. Optionally, the user can supply a team name to add to the writeup since that is often required if you want to submit it to an organization. The export is done client side using the APIs of Hedgedoc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a nice idea.
I hope people won't mistake this as an "export writeups" feature. I like reading quality writeups.
Are we sure Markdown is the best format for this feature ?
I think an archive would be better. Zip files are probably the best choice.
What do you think ?
At least I would like to keep the markdown option since then I am able to export all the tasks and import them in my personal note taking database, so the tasks are indexed and easily searchable for me.
I think it is the best to give the user the choice for the export format. So a dropdown with the options "Markdown" and "Zip" would fit this idea. However, I would suggest to delay this extra feature in another PR since I don't have time to realize this myself. |
Current exporter prints the date and the team name like this: ``` $start - $end\n Team: $team ``` Markdown renderers will print those lines on the same line: ``` $start - $end Team: $team ``` The proper way to force a new line is to end the first line with two spaces. > When you do want to insert a <br /> break tag using Markdown, you end a line > with two or more spaces, then type return. Source: https://daringfireball.net/projects/markdown/syntax#p
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I took the liberty to push a commit to your branch.
If you agree with it, feel free to merge the PR. Otherwise, you can reset it, force push and merge 6b4c692.
Thanks for the fix! I did not know this behavior of Markdown. |
This adds the possibility to use a zip archive as the export format. It will add every task as a Markdown file to the zip archive and create an overview file which contains the same introduction as the Markdown export. The original single-markdown export is still possible and the default. To create the zip archive, the dependency [JSZip](https://www.npmjs.com/package/jszip) is used. This feature was also already suggested in TFNS#185 (review).
This adds the possibility to use a zip archive as the export format. It will add every task as a Markdown file to the zip archive and create an overview file which contains the same introduction as the Markdown export. The original single-markdown export is still possible and the default. To create the zip archive, the dependency [JSZip](https://www.npmjs.com/package/jszip) is used. This feature was also already suggested in #185 (review).
This adds the possibility to use a zip archive as the export format. It will add every task as a Markdown file to the zip archive and create an overview file which contains the same introduction as the Markdown export. The original single-markdown export is still possible and the default. To create the zip archive, the dependency [JSZip](https://www.npmjs.com/package/jszip) is used. This feature was also already suggested in TFNS#185 (review).
All tasks can now be bundled together to create one big document of tasks that can be submitted as a writeup for a CTF. This saves lots of time copying the tasks in a document one by one.
The user can choose to export all tasks or only the solved tasks.
Optionally, the user can supply a team name to add to the writeup since that is often required if you want to submit it to an organization.
The export is done client side using the APIs of Hedgedoc.
This functionality is especially useful for CTFs where you have to submit your writeup very quickly after the competition (for example the ECSC).
Example of an export:
UI screenshots:
Feel free to change the layout of the export!