ユーザーが遭遇する可能性のある特定の問題を解決するために、企業が構築するすべての製品にとって、適切なドキュメントを作成することは不可欠です。システム ドキュメントは、ユーザーがドキュメントを参照するために何度も戻ってくることを保証し、ドキュメント サイトを使用しようとしてイライラすることはありません。
VuePress は、マークダウン ファイルを解析し、クライアント側の HTML ファイルとして事前レンダリングする静的サイト ジェネレーターです。 VuePress の作成は、ドキュメント サイトの開発を簡素化し、オープンソースの貢献者と開発者コミュニティに多大な価値を提供します。
この記事では、Vue、Vue Router、および Webpack に同梱されている VuePress を利用したテクノロジを使用して、既存のオープンソース プロジェクトからドキュメント ガイドを作成する方法を学習します。
このGitHub リポジトリで完成したソース コードを確認してください。参照用にフォークしてコードを実行します。
システム ドキュメントサイトのライブ デモ。
このガイドを完了するには、次のものが必要です。
このセクションでは、新しい VuePress プロジェクトを作成して、システム ドキュメント ガイドの作成を支援します。
次のコマンドを実行します。
yarn create vuepress-site [optionalDirectoryName]
[optionalDirectoryName]
は、目的のプロジェクト名に置き換えます。
上記のコマンドは、プロジェクト ファイルとフォルダーをスキャフォールディングし、VuePress サイトを構成するためのオプションを求めるプロンプトを表示します。これは次のようになります。
セットアップが完了したら、依存関係をインストールしてドキュメント サイトを含むdocs/folder
に移動し、以下のコマンドで開発サーバーを起動します。
cd docs/ yarn install yarn dev
VuePress には、開発中に変更が発生するたびにサイトを更新するホット リロード機能が搭載されており、デフォルトでhttp://localhost:8080
からアクセスできます。
ホームページは、あらゆる Web サイトの最初のページです。第一印象は重要です。
docs ディレクトリの下のsrc
フォルダーで、次の YAML フロント マターでindex.md
ファイルを更新します。
<!-- docs/src/index.md --> --- home: true heroImage: img/technical_writing_logo.png tagline: Technical writing is a form of communication that helps users solve problems with technology. As a technical writer, sharing your knowledge and experience with people helps you affirm that you have a solid understanding of the technology you're writing about. actionText: Get Started → actionLink: /guide/ --- ::: slot footer MIT Licensed | Copyright © 2022 [Teri Eyenike](https://twitter.com/terieyenike) :::
ルート Markdown ファイルの上記の front matter は、次のことを行います。
home: true
: ウェブサイトのトップページが表示されていることを検証しますimage
、 tagline
、行動を促すフレーズのテキストが、ページの残りの部分の開始/guide/
につながることを示しています。footer
のテキスト情報を表示する
上記のheroImage
などの静的メディア アセットの場合、 .vuepress
ディレクトリ内にpublic
フォルダーを作成し、そのpublic
フォルダー内に画像ファイルを保持するimg
という別のフォルダーを作成します。 public フォルダーは、ページ上のすべてのアセットを処理および参照し、それらをそれぞれのファイルのルートにコピーします。
次に、 docs/src/.vuepress/config.js
ファイルの構造を更新しましょう。
次のコード スニペットをコピーして貼り付けます。
// docs/src/.vuepress/config.js const { description } = require('../../package'); module.exports = { title: 'Technical writing resources', description: description, themeConfig: { searchPlaceholder: 'Search...', nav: [ { text: 'Guide', link: '/guide/', }, { text: 'GitHub', link: 'https://github.com/dharmelolar/technical-writing-resources/', }, ], sidebar: { '/guide/': [ { title: 'Guide', collapsable: false, children: [ '', 'articles', 'books', 'courses', 'youtube', 'communities', 'tools', 'who-pay', 'open-source', 'open-projects.md', 'blogs', 'interviews', 'publication', 'job-boards', ], }, ], }, }, };
最初に、Web サイトのtitle
とdescription
を指定します。これは、SEO に適したものであり、これらの属性セットを使用して Google によってインデックス化されます。メタ ディスクリプションと同様に、 docs
フォルダー内の package.json ファイルから参照されるディスクdescription
が、検索エンジンの結果ページに表示されます。
themeConfig オブジェクトでは、config.js ファイルに設定されているパラメーターは次のとおりです。
nav
配列を生成し、各nav
要素にルーティングしますsidebar
: sidebar オブジェクトに設定されたページ間のナビゲーションとして機能するリンクの配列
このセクションのguide
ページには、 config.js
ファイルに設定されたサポート リンクにつながる特定の情報が含まれています。
次に、次のファイルを含むguide
という名前のdocs/src
フォルダーにフォルダーを作成しましょう。
README.md ファイルで、次をコピーして貼り付けます。
<!-- docs/src/guide/README.md --> # What is Technical Writing? Technical writing is a type of writing where the author is writing about a particularsubject that requires direction, instruction, or explanation. This style of writing has a very different purpose and different characteristics than other writing styles. ~ [YourDictionary](https://grammar.yourdictionary.com/word-definitions/definition-of-technical-writing.html) ## Resources This repository contains different technical writing resources that has been gatheredfrom all around the internet
注: VuePress では、各サブディレクトリに含まれるすべてのREADME.md
またはindex.md
ファイルは、対応する URL /
を持つindex.html
に自動的に変換されます。
残りの個々の Markdown ファイルについては、 guide
フォルダー内のファイルを次のように更新します。
<!-- docs/src/guide/articles.md --> # Articles - [How to Get Started with Technical Writing](https://www.samjulien.com/how-to-get-started-with-technical-writing) - [How to become a technical writer](https://www.freecodecamp.org/news/how-to-become-a-technical-writer/) - [Technical Writing for Beginners – An AZ Guide to Tech Blogging Basics](https://www.freecodecamp.org/news/technical-writing-for-beginners/) - [Technical Writing: What and How?](https://edidiongasikpo.com/technical-writing-what-and-how) - [How to Learn Technical Writing for Free](https://medium.com/technical-writing-is-easy/how-to-learn-technical-writing-for-free-c16d191b3cee) - [Getting Started with Technical Writing](https://dillionmegida.com/p/getting-started-with-technical-writing/) - [Advice for Technical Writing](https://css-tricks.com/advice-for-technical-writing/) - [How To Write Content That Readers Will Read Based On Learnings From User Psychology](https://www.everythingtechnicalwriting.com/how-to-write-content-that-readers-will-read/) - [How To Create A Technical Writing Portfolio](https://www.everythingtechnicalwriting.com/technical-writing-portfolio/) - [Writing Tips for Software Developers – How to Become a Better Tech Writer](https://www.freecodecamp.org/news/writing-tips-software-developers/) - [11 Best Practices for Writing API Documentation](https://treblle.com/blog/11-best-practices-for-writing-api-documentation) - [Technical Writing vs Technical Blogging](https://lo-victoria.com/what-you-need-to-know-about-technical-writing-vs-technical-blogging#cknj3ppa30d7m2ks14c8o0vnf)
<!-- docs/src/guide/blogs.md --> # Blogs to follow for awesome writing contents | Technical Writers | Blogs | Twitter Handle | | :---------------- | ------------------------------------------ | ------------------------------------------------------- | | Damilola Ezekiel | https://dharmelolar.hashnode.dev | [@that_yhemmygirl](https://twitter.com/that_yhemmygirl) | | Tom Johnson | https://idratherbewriting.com/ | [@tomjohnson](https://twitter.com/tomjohnson) | | Kesi Parker | https://medium.com/@kesiparker | [@ParkerKesi](https://twitter.com/ParkerKesi) | | Tania Rascia | https://tania.dev/ | [@taniarascia](https://twitter.com/taniarascia) | | Dillion Megida | https://writing.dillionmegida.com/ | [@iamdillion](https://twitter.com/iamdillion) | | Linda Ikechukwu | https://www.everythingtechnicalwriting.com | [\_MsLinda](https://twitter.com/_MsLinda) | | Amruta Ranade | https://dev.to/amrutaranade | [@AmrutaRanade](https://twitter.com/AmrutaRanade) |
<!-- docs/src/guide/books.md --> # Books - [Writing Well](https://www.julian.com/guide/write/intro) ~ Julian Shapiro - [Technical Writing, Simplified](https://www.amazon.com/Technical-Writing-Simplified-Nell-Johnson/dp/154326848X/ref=sr_1_1?crid=NUEHTLJWKLMN&keywords=Technical+Writing%2C+Simplified&qid=1651614066&s=books&sprefix=technical+writing%2C+simplified%2Cstripbooks-intl-ship%2C416&sr=1-1) ~ Nell Johnson - [Writing for Sotware Developers](https://philipkiely.gumroad.com/l/uZPZU) ~ Philip Kiely - [Technical Writing For Dummies](https://www.amazon.com/Technical-Writing-Dummies-Sheryl-Lindsell-Roberts/dp/0764553089) ~ Sheryl Lindsell-Roberts - [Docs for Developers: An Engineer's Field Guide to Technical Writing](https://www.amazon.com/Docs-Developers-Engineers-Technical-Writing/dp/1484272161/) ~ Jared Bhatti - [Modern Technical Writing: An Introduction to Software Documentation ](https://www.amazon.com/Modern-Technical-Writing-Introduction-Documentation-ebook/dp/B01A2QL9SS/ref=sr_1_1?crid=Y7S35M7LVXWE&dchild=1&keywords=modern+technical+writing&qid=1595414707&sprefix=modern+technical+%2Caps%2C346&sr=8-1) ~ Andrew Etter - [Everybody Writes: Your Go-To Guide to Creating Ridiculously Good Content](https://www.amazon.com/gp/product/1118905555/ref=as_li_tl?ie=UTF8&tag=techlife09-20&camp=1789&creative=9325&linkCode=as2&creativeASIN=1118905555&linkId=5a9769d7dc1a62419abb83e6b451ac96) ~ Ann Handley - [On Writing Well](https://www.amazon.com/gp/product/0060891548/ref=as_li_tl?ie=UTF8&tag=techlife09-20&camp=1789&creative=9325&linkCode=as2&creativeASIN=0060891548&linkId=27bd72a8da3fb242b39dbe4edb470daf) ~ William Zinsser - [Technical Communication](https://www.amazon.com/Technical-Communication-Mike-Markel-dp-1319245005/dp/1319245005/ref=dp_ob_image_bk) ~ Mike Markel
<!-- docs/src/guide/communities.md --> # Communities Communities can provide valuable learning opportunities, growth, mentorship and career advancement. Connecting with people of similar interest is one of the reasons why people join communities. Here are some of the communities that technical writers can join: - [Write the Docs](https://www.writethedocs.org/) - [Linkedin Technical Writing Community](https://www.linkedin.com/groups/13705342/) - [Global Writers Community](https://web.facebook.com/groups/technicalwriterjobs/?_rdc=1&_rdr) - [API Documentation Group](https://www.linkedin.com/groups/3709151/) - [Technical Writer Forum](https://www.linkedin.com/groups/112571/) - [Hashnode](https://discord.com/invite/hashnode) - [The Good Docs Project Community](https://thegooddocsproject.dev/community/) - [Techwriters.dev](https://techwriters.dev/) - [r/technicalwriting](https://www.reddit.com/r/technicalwriting/)
<!-- docs/src/guide/courses.md --> # Courses - [Technical Writing Courses for Engineers](https://developers.google.com/tech-writing) - [Technical Writing: How to Write Software Documentation](https://www.udemy.com/course/start-your-career-as-user-assistance-developer/) - [Learn API Technical Writing: JSON and XML for Writers](https://www.udemy.com/course/api-documentation-1-json-and-xml/) - [The Art of API Documentation](https://www.udemy.com/course/the-art-of-api-documentation/) - [Documenting APIs: A guide for technical writers and engineers](https://idratherbewriting.com/learnapidoc/) - [Technical Writer Certification Course](https://technicalwriter.teachable.com/p/technical-writing-certification) ~ Technical Writer Certification Course was created for aspiring technical writers or people who want to brush up on their technical writing skills. - [SEO FOR DEVS](https://seofordevs.com/) ~ SEO FOR DEVS is a free 2 weeks course that helps people discover your tech blog or side project in a systematic way - [API Documentation for Developers](https://apidocsfordevs.com/) ~ A hands-on guide to creating and maintaining API documentation.
<!-- docs/src/guide/interviews.md --> # Preparing for technical writing interviews There are several tips that can help you land an interview but some of the important ones are having a well tailored resume and cover letters. Check out these cover letter templates and tips to help you land your next interview: - [Cover Letter Template for your next job ](https://dillionmegida.com/p/cover-letter-template/) - [How to Write an Enticing Cover Letter](https://ruthikegah.xyz/how-to-write-an-enticing-cover-letter) - [How to Write a Technical Writer Resume [+Examples]](https://technicalwriterhq.com/technical-writer-resume/) - [Best Technical Writer Cover Letter Example and Format ](https://technicalwriterhq.com/technical-writer-cover-letter/) Here are some resources to technical writing interview questions to help you prepare for your next interview. - [12 Technical Writer Interview Questions and Answers](https://technicalwriterhq.com/technical-writer-interview-questions/) - [Google Technical Writer Interview Questions](https://technicalwriterhq.com/google-technical-writer-interview-questions/) - [Technical Writing Job Interview](https://www.youtube.com/watch?v=cqaEgMv2JAg)
<!-- docs/src/guide/job-boards.md --> # Job Boards For Technical Writing roles - [Startup.jobs](https://startup.jobs/?q=Technical+writer&remote=true&utm_campaign=Everything+Technical+Writing+Newsletter&utm_medium=email&utm_source=Revue+newsletter) - [Angel.co](https://angel.co/jobs) - [Content Writing Jobs](https://contentwritingjobs.com/)
<!-- docs/src/guide/open-projects.md --> # Open Source Projects/Programs Technical Writers Can Contribute To - [Codecademy Docs](https://www.codecademy.com/resources/docs) ~ Docs is a community-driven collection of code documentation for popular programming languages and frameworks. - [The Good Docs Project](https://thegooddocsproject.dev/) ~ The Good Docs Project is a community working together to create the templates, tools, and resources to improve the overall quality of documentation in OSS and beyond. - [Google Season of Docs](https://developers.google.com/season-of-docs) ~ Season of Docs provides support for open source projects to improve their documentation and gives professional technical writers an opportunity to gain experience in open source. - [Hacktoberfest](https://hacktoberfest.digitalocean.com/) ~ Hacktoberfest is a yearly event to encourage people to contribute to open source in October. - [The GNOME Documentation Project](https://wiki.gnome.org/DocumentationProject)
<!-- docs/src/guide/open-source.md --> # Open Source Projects Contributing to open source can be a rewarding way to learn, teach, and build experience in just about any skill you can imagine. A lot of peole contribute to open source for different reasons and the vital one which is improving one's skillset. Here are some articles to help you understand how to contribute to open source projects. - [The Technical Writers Guide to Contributing to Open Source Projects](https://edidiongasikpo.com/the-technical-writers-guide-to-contributing-to-open-source-projects) - [How to Contribute to Open-Source as a Technical Writer](https://javascript.plainenglish.io/how-to-contribute-to-open-source-as-a-technical-writer-bb708245480c) - [4 tips to becoming a technical writer with open source contributions](https://opensource.com/article/21/11/technical-writing-open-source) - [Getting started with Open Source as a Technical Writer](https://amara.hashnode.dev/getting-started-with-open-source-as-a-technical-writer)
<!-- docs/src/guide/publication.md --> # Sites to publish articles - [Hashnode](https://hashnode.com/) ~ Hashnode is a free developer blogging platform to help you share your ideas with people in tech, developers, and engineers. - [Medium](https://medium.com/) ~ Medium is a social publishing platform with lots of users and you can publish diverse contents and ideas. - [Dev.to](https://dev.to/) ~ Dev.to is where programmers share ideas and help each other grow. It is an online community for sharing and discovering great ideas. - [Mirror.xyz](https://mirror.xyz/) ~ Mirror.xyz is a publishing platform for writers that leverages cryptocurrency and blockchain technology. - [Freecodecamp](https://www.freecodecamp.org/news/how-to-write-for-freecodecamp/) ~ FreeCodeCamp is a non-profit organization that consists of an interactive learning web platform, an online community forum, chat rooms, online publications and local organizations that intend to make learning web development accessible to anyone.
<!-- docs/src/guide/tools.md --> # Tools - [Canva](https://www.canva.com/) ~ Canva is a graphic design platform, used to create social media graphics, presentations, posters, documents and other visual content. - [Removebg](https://www.remove.bg/) ~ A tools that is used to remove image backgrounds. - [Markdown](https://daringfireball.net/projects/markdown/) ~ Markdown is a text-to-HTML conversion tool for web writers. - [AsciiDoc](https://asciidoc.org/) ~ AsciiDoc is a lightweight and semantic markup language primarily designed for writing technical documentation. - [Denigma](https://denigma.app/) ~ Denigma is a tool that explains code in understandable english. - [Grammarly](https://app.grammarly.com/) ~ Grammarly is a typing assistant that reviews spelling, grammar, punctuation, clarity, engagement, and delivery mistakes. - [Hemingway App ](https://hemingwayapp.com/) ~ The Hemingway App is a web and desktop app that can improve your writing style and touch up your content. - [Quillbot AI](https://quillbot.com/) ~ Quillbot AI is a multi-purpose writing tool that can assist in improving your writing style. Some of its products are Paraphraser, Grammar Checker, Plagiarism Checker, Co-Writer, Summarizer, Citation Generator, and Word Counter. - [Notion](https://www.notion.so/) ~ Notion is an all-in-one workspace for your notes, tasks, wikis, and databases. It is a tool you can use to organize your thoughts, projects, and information. - [Dropbox Paper](https://www.dropbox.com/paper) ~ Dropbox Paper is an online document workspace, where you can organize and display text, media, and files all in one place. - [GoFullPage - Full Page Screen Capture](https://chrome.google.com/webstore/detail/gofullpage-full-page-scre/fdpohaocaechififmbbbbbknoalclacl?hl=en) ~ A chrome extension taht allows you take full page screenshot of your current browser window. - [Carbon](https://carbon.now.sh/) ~ Carbon is the easiest way to create and share beautiful images of your source code. - [Isitwp](https://www.isitwp.com/headline-analyzer) ~ IsItWP Headline Analyzer tool helps you write headlines that drive traffic, shares and rank better in search results. - [Capitalize my title](https://capitalizemytitle.com/) ~ Making title capitalization easy for your writing - [Wordtune](https://www.wordtune.com/) ~ Wordtune turns text into concise, engaging, well-written messages. - [Headline Analyzer](https://coschedule.com/headline-analyzer) ~ Write Headlines That Drive Traffic, Shares, And Search Results. - [Title Generator](https://tweakyourbiz.com/title-generator) ~ Generate great titles for articles and blog posts. - [SEO writing assistant](https://www.semrush.com/swa/) ~ A smart writing editor that helps you optimize your copy for engagement and SEO. - [HackMD](https://hackmd.io/) ~ A collaborative markdown editor for sharing your articles and getting feedback from others. - [Copyscape](https://www.copyscape.com/) ~ Plagiarism checker - [MarkDoc](https://markdoc.io/) ~ A superset of Markdown for creating custom documentation websites. It was created by Stripe and made open source in May 2022. - [Wordtune](https://www.wordtune.com/) ~ Wordtune is an AI- powered writing companion that rephrases your sentences to say exactly what you mean through clear, compelling, and authentic writing.
<!-- docs/src/guide/who-pay.md --> # Who pays technical writers Writing technical contents for organizations and publications is an excellent way to earn extra income. This way, you learn a lot, then share your knowledge and get paid. Check out these compiled list for organizations that pays technical writers. - [Community writer program](https://github.com/malgamves/CommunityWriterPrograms) - [Get Paid to Write for These 45+ Websites](https://blog.idrisolubisi.com/get-paid-to-write-for-these-45-websites) - [Publications That Pay You To Write Technical Articles](https://catalins.tech/websites-that-pay-you-to-write-technical-articles)
<!-- docs/src/guide/youtube.md --> # Youtube - [DocToHelpTV](https://www.youtube.com/user/DocToHelpTV/videos) - [Technical Writer HQ](youtube.com/channel/UCjMnGjosWhBxYtumwhQLZmA/videos) - [Amruta Ranade](https://www.youtube.com/channel/UCKsaZMjb3lsLe5YtasDifuA) - [William Smith](https://www.youtube.com/watch?v=amKDhaIlyOc) - [How to become a Technical Writer | Skills & Career Growth](youtube.com/watch?v=8l2KJXIBpB0)
ページは次のようになります。
このチュートリアルでは、VuePress を使用してシステム ドキュメント ガイドを作成しました。これは、お気に入りのオープン ソース プロジェクト用の単一ページ アプリケーションを提供します。 VuePress を使用すると、高速でスケーラブルなアプリを短時間で構築できます。