Delft Open hardware
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
      • Invitee
    • Publish Note

      Publish Note

      Everyone on the web can find and read all notes of this public team.
      Once published, notes can be searched and viewed by anyone online.
      See published notes
      Please check the box to agree to the Community Guidelines.
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Engagement control
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Versions and GitHub Sync Engagement control Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
Invitee
Publish Note

Publish Note

Everyone on the web can find and read all notes of this public team.
Once published, notes can be searched and viewed by anyone online.
See published notes
Please check the box to agree to the Community Guidelines.
Engagement control
Commenting
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
  • Everyone
Suggest edit
Permission
Disabled Forbidden Owners Signed-in users Everyone
Enable
Permission
  • Forbidden
  • Owners
  • Signed-in users
Emoji Reply
Enable
Import from Dropbox Google Drive Gist Clipboard
   owned this note    owned this note      
Published Linked with GitHub
Subscribed
  • Any changes
    Be notified of any changes
  • Mention me
    Be notified of mention me
  • Unsubscribe
Subscribe
--- title: Open Hardware design and prototyping description: In this lesson we introduce concepts, tools and techniques to design and develop open hardware projects. authors: Jerry de Vos, Jose Urra, Santosh Ilhamparuthi version: 1.0 --- # Open Hardware design and prototyping [![License: CC BY 4.0](https://img.shields.io/badge/License-CC_BY_4.0-lightgrey.svg)](https://creativecommons.org/licenses/by/4.0/) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.7195666.svg)](https://doi.org/10.5281/zenodo.7195666) **Date of release:** 29-08-2022 Prototyping (or **experimental thinking and building of functional products**) is perhaps the most relevant skill needed to design (open) hardware successfully. (Some might argue that is a fundamental skill for life :smile_cat: but we are not going that far). Prototypes help us to expand our knowledge base, build confidence in the relevance of a project, implement ideas, and approach projects iteratively through controlled failure and incremental success. **They are a means to the end of reaching a durable and long-lasting design in a lean and cost-efficient way**. This lesson is about helping you to incorporate prototyping into your toolbox. :::info **By the end of this lesson you will** - Be able to generate experiment designs or prototyping tasks to validate and develop key ideas in your project - Organize and plan the execution of these experiments - Document these experiments and capture the learnings from executing them **Considerations and prerequisites** - Being familiar with our previous lesson: **[framing open hardware projects](https://hackmd.io/AHVevvT-SbOY2jq4FYdieg?both)** will help you get the most out of this lesson. **Learning objectives** - Incorporate an experimental approach to the development of your project ideas - Apply prototyping as a core activity in the design and development of open hardware projects ::: ## Introduction **15 years, 5127 prototypes** is what it took James Dyson to create the DC01, his first upright vacuum cleaner with the patented cyclone technology. This can give you an idea of how much prototyping was needed to change vacuum cleaning technologies and set a new standard. But an open hardware project may well be a series of prototypes or even just one prototype (these are often found in [hackaday.io](https://hackaday.io/discover)) ![](https://i.imgur.com/mpG4GXI.png) Early promotional photo of a DC01 against a competitor with a cloth bag. image retrieved from: [link](https://dyson-h.assetsadobe2.com/is/image/content/dam/dyson/invention/06/Cullinan_Chapter06_Sidebyside.jpg?cropPathE=mobile&fit=stretch,1&fmt=pjpeg&wid=640) ### What is a prototype Prototypes are models of a future solution or product that help better define the final design specifications of the product/service, as well as communicate how the final product will be. They are used to test partially or completely ideas and designs and they have essentially an experimenting and testing purpose. **We prototype to learn fast and cheaply. To study and approach the solution iteratively, manage risks, and control failure.** :::danger **What is not a prototype** Not all builds, made artifacts or hacks are by default prototypes. You can build something for fun, or as a hobby. A prototype can be easily confused with a build or a model, it is only a prototype when it has served the purpose of researching or testing aspects of a final solution in progress within a project. ::: ## Uses of prototypes - **Product/project concept validation** Check that the product/project expectations and core hypothesis are objectively or empirically valid. - **Product/project concept verification** Check and demonstrate the technical feasibility of the product. - **Learning:**: answering questions about performance, feasibility, and desirability. - **Communication**: Demonstration of product for feedback, 3D physical models of style or function. - **Integration** Combination of sub-systems into system model, alpha or beta test models. These prototypes tend to be approximations that are closer to a final product. - **Milestones** Sprint increment, the release of a new version of a product/project, first testable solution. ## Different types of prototypes Prototypes come in many shapes and sizes, they can be as simple as a piece of cardboard, or as advanced as a ready-to-fly satellite. *A prototype is an approximation of the product*. The following diagram classifies different types of prototypes using a biodigester as an example. This diagram can help you think about how can you design experiments or prototypes to approach sub-problems or aspects of your solution. A backlog of experiments or tests can be composed of focused prototypes where you develop a critical module of your solution or a functional prototype where you go after a working principle or mechanism. :::info The goal of articulating your different prototyping intents or experiments has to do with the framing of your project, as well as the time and resources you can allocate to it. ::: ![](https://i.imgur.com/sENP08T.png) ### Prototyping for validation vs verification In the context of hardware design, prototypes can be useful to: 1. **Validate** core project /product assumptions. (In the case of open hardware these can be core design specifications that satisfy certain needs or even the purpose of the project itself) 2. Explore technical options/solutions/ideas and **verify** that they implement correctly the desired design specifications. :::info Prototypes that **verify** are focused on technical feasibility, and performance. Prototypes to **validate** are focused on desirability, market, needs, etc. The first type aims to "Do the right thing" The second type aims to "Do things right". ::: At a very high level then we can say that prototyping can be used to **validate** a value proposition (Is it a good value proposition?) or to **verify** a value proposition (Is it feasible?). In the first case, prototypes aim to test a project's theory, in the second case they are used to test the project's feasibility through experimentation and engineering. > Validation is the process of checking whether the specification captures the customer's requirements, while verification is the process of checking that the software meets specifications. [Read more about it here](https://www.arbourgroup.com/blog/2015/verification-vs-validation-whats-the-difference/#:~:text=Validation%20is%20the%20process%20of,that%20the%20software%20meets%20specifications) ## Overview of the testing process The testing process involves mostly planning your experiments and prototypes based on different criteria such as resources, relevance, component dependencies, deadlines, among many more criteria. :::warning :warning: The following testing process is inspired by scrum, lean, and the way is presented by the authors of value proposition design. Even though this process is presented as a process to validate the business ideas, it can also be applicable to design and development activities. **The only difference is that we have added verification experiments as part of the hardware development process.** ::: ![](https://i.imgur.com/wLCeMJX.png) :::info :point_up_2: Image retrieved from the book: "Value proposition design: How to create products and services that customers want" ::: 1. **Extract hypotheses from your project framing process** (ideas, concepts, sketches). It might be that a hypothesis requires multiple experiments, even a cycle of prototypes that aim to test this core hypothesis. 2. **Prioritize hypotheses**. Which are those hypothesis that underly the core framing of your project? Which are the riskier ones, or the ones that has more weight on the overall idea? These are questions that can help you decide how to prioritize them. 5. **Ideate and design experiments to help you validate these hypotheses.** Before building prototypes you can create a "test card", this is way of documentation including its purpose. 7. **Prioritize these experiments based on effectiveness, effort, time, completeness, and price.** This can end up being the planning of a sprint or a milestone in your project. 8. **Build your experiments and run your tests to answer your hypotheses.** 9. **Document and incorporate your learnings into your design.** This may well end up being also an upgrade of your design specifications, a new version release and a changelog explaining what has changed in your latest desgin version. :::warning You can apply this process very loosely or very systematically and detailed, depending on how important the project is. The complexity of the planning, documentation, and project mangement always follows the complexity of a project, its size, number of adopters, and how dependable it is. ::: ### Find a balance between quality, time, and budget when organizing and prioritizing your backlog of experiments using the criteria below :point_down: --- ![](https://i.imgur.com/LH56kho.png) image retrieved from: [https://www.mistywest.com/posts/what-is-the-purpose-of-hardware-prototyping](https://www.mistywest.com/posts/what-is-the-purpose-of-hardware-prototyping) ## Getting started Our set of tools to help you get started with this process are [**test cards**](https://www.strategyzer.com/blog/posts/2015/3/5/validate-your-ideas-with-the-test-card), [**learning cards**](https://www.strategyzer.com/blog/posts/2015/3/9/capture-customer-insights-and-actions-with-the-learning-card), and a [**progress board**](https://www.slideshare.net/Strategyzer/progress-board). ![](https://i.imgur.com/GKwhzXZ.png) :::info :point_up_2: Image retrieved from the book: "Value proposition design: How to create products and services that customers want" ::: ### Design and build your experiments/prototypes using a test card At this point, you should have selected those ideas, hypotheses, and concepts that are a priority for your project currently. In this step, we will find out how testable these are. **At this point the goal is to design prototypes and capture them using the test card as a documentation template.**. :::success **Tips** - **Go tangible and visual.** "Don’t waste time in long winding conversations (we like calling this blahblahbah). Sketches, simple cad models, paper, cardboard, or a 3D print. - **Keep your models/prototypes simple.** "Deeply refining ideas that are likely to change drastically is expensive and wasteful – only capture the essence in your prototypes" - **Don’t fall in love with your first idea.** "Explore and compare alternatives before you focus on one option." Say you have a hypothesis, perhaps you can design experiments with different technical options that can achieve roughly the same goal. - **Seek criticism early!** "Present your models early on to spark conversations and use negative feedback to create improved prototypes." ::: **Some examples of candidates to capture in a test card**: - An architecture or several architecture designs that you want to present to a more senior engineer to get feedback. - A translation of a schematic into different PCB variations that fit for example a casing you have already selected from a vendor. - A simulation or several simulations - It can even be a set of experiments that aim to validate a core hypothesis that combines simulations, cad modeling, 3D printing, etc. ### Test your prototypes and capture your learnings At this point, you have run at least a test and you can reflect back on what have you observed, discovered, or learned through the prototype implementation and testing based on measurements. **The goal here is to capture this learning and translate this into new actions** (perhaps a next prototype or perhaps a document updating your new design version). > The Learning Card forces you explicitly articulate: >- Which hypotheses you choose to test >- What you observed, discovered, or learned in the field >- What did you deduct from those observations (i.e. the insights you gained from the experiment) >- How you'll act upon this learning (e.g. to improve your business model and value proposition ideas) ## The progress board This tool simply aims to structure your testing process by starting from left to right with your core ideas broken down into prioritized hypotheses (concepts, ideas, sub-problems, sub-solutions). Then we have a backlog of tests that can also be prioritized using the prototyping criteria we have shared in previous sections and ends up with learnings and knowledge that are captured in better design specifications and choices. ![](https://i.imgur.com/hynkVZL.png) :::info :point_up_2: Image retrieved from the book: "Value proposition design: How to create products and services that customers want" ::: # Exercises **Goal:** The goal of these exercises is to help you set up a simple testing framework with a free, simple and available tool that is widely used by open source communities in software and hardware development. **Hopefully these exercises will help you work further in your project using an agile-like project management approach.** ## Exercise 1: Create a progress board We are going to rely mostly on GitHub and markdown to do these exercises. Consider doing all the documentation using markdown in your own notes and then transfer them in github issues and the board so that you keep also those notes reusable. :::warning :hand: Before getting started you need to have a GitHub ::: **Instructions:** - Create a GitHub project if you haven't for your project (remember you can use github as one of the different distribution channels for your open hardware documentation) - Use GitHub project boards to create a progress board. Make an example that people can copy ## Exercise 2: Pick up a hypothesis that is core to your project and design several experiments using the test cards :::warning :hammer_and_wrench: Here we provide a template that already combines a test card and a learning card. This ::: **Instructions** - Document your experiments in a local hackmd so that you can reuse it later using the template we are providing below. - Open an issue and name it based on a test design. [Read more about how to open an issue in GitHub](https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue). - Add the issue to your project board. [Read more about how to do this step](https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue) ### Template ``` ## Test name (this can be the name of the GitHub issue) duration, deadline (these metadata can be added in GitHub issues) Step 1: hypothesis - We believe that .... <here goes your hypothesis> - Hypothesis importance (score from 1 to 3) Step 2: Test - To verify that, we will.... <here goes your experiment design, you can also use sketches and images> - Test cost (from 1 to 3) - Data reliability (score from 1 to 3) Step3: Metric - And measure..... <what is your core > - Time required Step 4: Criteria We are right if...... <here goes the criteria that need to be met for this test to be positive> Learning documentation Step 5: Observation - We observed that ..... Step 6: Learning and insights - From what we learned that .... Step 7: - Therefore, we will ... <what you will do after capturing this insight, perhaps new prototypes or different types of tests> ``` ## Example: 3D printable hand-powered centrifuge This exercise uses the [3D -Fuge: A New Hand Powered Centrifuge](https://www.labonthecheap.com/3d-fuge-a-new-hand-powered-centrifuge/) as an inspiration to demonstrate how you can design a test card and they haven't been tested, therefore the learning part is just an example for the purpose of this lesson. :::spoiler ### Test 1 focused on target specifications hypotheses (verification) **Step 1:** We believe that a portable hand-powered centrifuge of less than 20 EUR can be used to analyze diseases like meningitis and aids in extreme situations where there is no electricity. (This hypotheses has an importance score of 3) **Step 2:** To verify that we will build a 3D printable prototype with a rotational mechanism that delivers the force needed to achieve the target spec of 2000 CFR and build a test setup with a sensor to test the speed of the centrifuge. :warning: Notice in this step that the prototype involves designing the testing setup, otherwise the target spec cannot be measured accurately. **Step 3:** We will measure the Centrifugal Relative Force that separates the sample matter (2000 CFR) **Step 4:** We are right we can deliver the CFR at a certain time (2 mins, and we can separate the samples, and it is doable by a person X times per hour. This is an example of a target spec that allows to translation of the hypothesis into a testable idea. **Step 5** We observed that the centrifuge can rotate up to 30000 RPM. **Step 6** We learned that is possible to build a centrifuge of this kind with recycled PLA for much less than 20 EUR of costs. **Step 7** Therefore we will develop new experiments and prototypes focused on testing the robustness usability and lifecycle of such a centrifuge in actual usage environments. ::: --- :::spoiler ### Test 2 focused on testing contributor and user channels (validation) **Step 1:** We believe that many people around the world will be interested in testing and replicating this prototype and provide useful feedback on how relevant it is for the target usage context. **Step 2:** In order to test this, we will generate clear building guides with the STL files to print and clear documentation of how to separate a sample with coffee. We will also provide a simple form with some questions and fields to provide feedback. The form will be a clear contribution request. **Step 3:** We will measure likes in GitHub, we will measure **Step 4:** We are right if someone doing a diagnosis of these diseases in these difficult contexts confirms that this is a useful **Step 5** - We observed that most enthusiasm came from teachers and educators in high schools and primary schools that have local maker spaces. - There were a variety of hobbyists and enthusiasts - Few but relevant responses from physicians doing service in rural areas. **Step 6** The audience that is more interested in the project is not the one we expected. **Step 7** Therefore we will: - Keep reaching our target audience and learn more from contexts in which this tool could be used. - Think of a different low-cost design that is battery-powered or even solar-powered. - Refine the design based on user feedback. - Document an assignment for a mechanical engineer to optimize the design for 3D printing and injection molding. ::: --- # References [1] K. T. Ulrich and S. D. Eppinger, Product design and development, 3rd ed. Boston: McGraw-Hill/Irwin, 2004. [2] “Adding issues and pull requests to a project board - GitHub Enterprise Server 3.4 Docs,” GitHub Docs. https://ghdocs-prod.azurewebsites.net/en/enterprise-server@3.4/issues/organizing-your-work-with-project-boards/tracking-work-with-project-boards/adding-issues-and-pull-requests-to-a-project-board (accessed Aug. 28, 2022). [3] “Creating an issue,” GitHub Docs. https://ghdocs-prod.azurewebsites.net/en/issues/tracking-your-work-with-issues/creating-an-issue (accessed Aug. 28, 2022). [4] “3D -Fuge: A New Hand Powered Centrifuge | Lab On The Cheap.” https://www.labonthecheap.com/3d-fuge-a-new-hand-powered-centrifuge/ (accessed Aug. 28, 2022). [5] “Creating a project (classic),” GitHub Docs. https://ghdocs-prod.azurewebsites.net/en/issues/organizing-your-work-with-project-boards/managing-project-boards/creating-a-project-board (accessed Aug. 28, 2022). [6] A. Osterwalder, Y. Pigneur, G. Bernarda, and A. Smith, Value proposition design: how to create products and services customers want. Hoboken: John Wiley & Sons, 2014. [7] “What Is The Purpose Of Hardware Prototyping?” https://www.mistywest.com/posts/what-is-the-purpose-of-hardware-prototyping/ (accessed Aug. 26, 2022). [8] T. Varma, Agile Product Development: How to Design Innovative Products That Create Customer Value. Berkeley, CA: Apress, 2015. <!-- # Notes Jerry make something for a reason, learn something along the way, understand the process, gain experience, show potential > The purpose of hardware prototyping is **to answer questions, ranging from technical unknowns to getting a better understanding of your end-users and/or market.** > stages - proof of concept - alpha - beta - release ### considerations while hardware prototyping it is always finding a balance between quality, time, and budget. but you can define this budget ![](https://i.imgur.com/LH56kho.png) from: [https://www.mistywest.com/posts/what-is-the-purpose-of-hardware-prototyping](https://www.mistywest.com/posts/what-is-the-purpose-of-hardware-prototyping) ### example: spaceX https://www.youtube.com/watch?v=bvim4rsNHkQ [](https://www.youtube.com/watch?v=bvim4rsNHkQ) ### Example: Dyson **15 years, 5127 prototypes** is what it took James Dyson to create the DC01, his first upright vacuum cleaner with the patented cyclone technology. Dyson clearly understood the importance of creating and testing prototypes for the development of his new product. [https://www.youtube.com/watch?v=OwtjQM49Ir0](https://www.youtube.com/watch?v=OwtjQM49Ir0) :::danger example materials for different stages of prototypes: * simple: cardboard, lego,foam, paper, clay, breadboard * basic: extruded aluminium, lasercut, 3D print, perfboard * advanced: milling, injection moulding, pcb(a) ::: ### Useful Resources [Digital Manufacturing Resource Center | Fictiv](https://www.fictiv.com/resources) [3D Printing Guides, White Papers, Webinars, and More](https://formlabs.com/eu/resources/) [](https://prototype.berkeley.edu/) [Blog | Outdesign.Co](https://www.outdesign.co/blog) https://www.youtube.com/c/HardwarePioneers/videos --> --- <ul class="pager"> <!--this is the style of the button--> <li><a href="/AHVevvT-SbOY2jq4FYdieg">Previous Week</a></li> <!--This button takes me to the table of contents--> <li><a href="/hZH1FWsNRSO0FJ1i-9tE4g">Next Week</a></li> <!--This button takes me to the previous page--> </ul>

Import from clipboard

Paste your webpage below. It will be converted to Markdown.

Advanced permission required

Your current role can only read. Ask the system administrator to acquire write and comment permission.

This team is disabled

Sorry, this team is disabled. You can't edit this note.

This note is locked

Sorry, only owner can edit this note.

Reach the limit

Sorry, you've reached the max length this note can be.
Please reduce the content or divide it to more notes, thank you!

Import from Gist

Import from Snippet

or

Export to Snippet

Are you sure?

Do you really want to delete this note?
All users will lose their connection.

Create a note from template

Create a note from template

Oops...
This template is not available.
Upgrade
All
  • All
  • Team
No template found.

Create custom template

Upgrade

Delete template

Do you really want to delete this template?
Turn this template into a regular note and keep its content, versions, and comments.

This page need refresh

You have an incompatible client version.
Refresh to update.
New version available!
See releases notes here
Refresh to enjoy new features.
Your user state has changed.
Refresh to load new user state.

Sign in

Forgot password

or

By clicking below, you agree to our terms of service.

Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
Wallet ( )
Connect another wallet

New to HackMD? Sign up

Help

  • English
  • 中文
  • Français
  • Deutsch
  • 日本語
  • Español
  • Català
  • Ελληνικά
  • Português
  • italiano
  • Türkçe
  • Русский
  • Nederlands
  • hrvatski jezik
  • język polski
  • Українська
  • हिन्दी
  • svenska
  • Esperanto
  • dansk

Documents

Help & Tutorial

How to use Book mode

How to use Slide mode

API Docs

Edit in VSCode

Install browser extension

Get in Touch

Feedback

Discord

Send us email

Resources

Releases

Pricing

Blog

Policy

Terms

Privacy

Cheatsheet

Syntax Example Reference
# Header Header 基本排版
- Unordered List
  • Unordered List
1. Ordered List
  1. Ordered List
- [ ] Todo List
  • Todo List
> Blockquote
Blockquote
**Bold font** Bold font
*Italics font* Italics font
~~Strikethrough~~ Strikethrough
19^th^ 19th
H~2~O H2O
++Inserted text++ Inserted text
==Marked text== Marked text
[link text](https:// "title") Link
![image alt](https:// "title") Image
`Code` Code 在筆記中貼入程式碼
```javascript
var i = 0;
```
var i = 0;
:smile: :smile: Emoji list
{%youtube youtube_id %} Externals
$L^aT_eX$ LaTeX
:::info
This is a alert area.
:::

This is a alert area.

Versions and GitHub Sync
Get Full History Access

  • Edit version name
  • Delete

revision author avatar     named on  

More Less

No updates to save
Compare
    Choose a version
    No search result
    Version not found
Sign in to link this note to GitHub
Learn more
This note is not linked with GitHub
 

Feedback

Submission failed, please try again

Thanks for your support.

On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

Please give us some advice and help us improve HackMD.

 

Thanks for your feedback

Remove version name

Do you want to remove this version name and description?

Transfer ownership

Transfer to
    Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

      Link with GitHub

      Please authorize HackMD on GitHub
      • Please sign in to GitHub and install the HackMD app on your GitHub repo.
      • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
      Learn more  Sign in to GitHub

      Push the note to GitHub Push to GitHub Pull a file from GitHub

        Authorize again
       

      Choose which file to push to

      Select repo
      Refresh Authorize more repos
      Select branch
      Select file
      Select branch
      Choose version(s) to push
      • Save a new version and push
      • Choose from existing versions
      Include title and tags
      Available push count

      Pull from GitHub

       
      File from GitHub
      File from HackMD

      GitHub Link Settings

      File linked

      Linked by
      File path
      Last synced branch
      Available push count

      Danger Zone

      Unlink
      You will no longer receive notification when GitHub file changes after unlink.

      Syncing

      Push failed

      Push successfully