Skip to content

Latest commit

 

History

History

drag-and-drop

Miro Drag and Drop App

This app shows how to implement image drag and drop to a Miro board.

👨🏻‍💻 App Demo

drag-and-drop-demo.mov

📒 Table of Contents

⚙️ Included Features

🛠️ Tools and Technologies

✅ Prerequisites

📖 Associated Developer Tutorial

To view a more in depth developer tutorial of this app (including code explanations) see the drag-and-drop tutorial on Miro's Developer documentation.

🏃🏽‍♂️ Run the app locally

  1. Run npm install to install dependencies.
  2. Run npm start to start developing.
    Your URL should be similar to this example:
    http://localhost:3000
    
  3. Open the app manifest editor by clicking Edit in Manifest.
    In the app manifest editor, configure the app as follows and then click save:
# See https://developers.miro.com/docs/app-manifest on how to use this
appName: Drag and Drop
sdkVersion: SDK_V2
sdkUri: http://localhost:3000
scopes:
  - boards:read
  - boards:write
  1. Go back to your app home page, and under the Permissions section, you will see a blue button that says Install app and get OAuth token. Click that button. Then click on Add as shown in the video below.

⚠️ We recommend to install your app on a developer team while you are developing or testing apps.⚠️

install-drag-and-drop.mov
  1. Go to your developer team, and open your boards.
  2. Click on the plus icon from the bottom section of your left sidebar. If you hover over it, it will say More apps.
  3. Search for your app Drag and Drop or whatever you chose to name it. Click on your app to use it, as shown in the video below.
search-for-app.mov

🗂️ Folder structure

.
├── src
│  └── styles
│      └── style.css <-- CSS styles for the app.
│  └── App.tsx <-- The main app. Contains structure for the sidebar when launched. This file also contains logic for fetching images from [The Noun Project](https://thenounproject.com/).
│      main.tsx <-- Initializes app, and contains logic for dropping image onto the board.
├── app.html <-- The app itself. This is loaded on the board inside the 'appContainer'.
└── index.html <-- The app entry point. This is the value you assign to 'sdkUri' in the app manifest file.

🫱🏻‍🫲🏽 Contributing

If you want to contribute to this example, or any other Miro Open Source project, please review Miro's contributing guide.

🪪 License

MIT License.