9a6f4e8c4b
This PR incorporates design tweaks from #2922 without the home page or content changes. These are: - Replacing all `hello@tldraw.com` with `sales@tldraw.com` - Fix mailto links. - Showing the first item in a section on direct routes to the section - Splitting the article page for human-written content from article page for generated content - Splitting the layout for the landing page from the rest of the site (temporarily identical to the regular content) - Removing headings from left sidebar - Restoring headings in right sidebar for human-written pages with > 1 heading link - Styling block quote - Adjusting section link appearance / layout in header / menu - Changing the order of search results to preference docs over examples - Updating copy on events - Removing copy on user interface menus - Adding hero as prop to all articles - Updated icon - Fixing a few broken links - Replaces the sandpack code blocks with hljs code blocks, except in examples. ### Change Type - [x] `documentation` — Changes to the documentation only[^2]
75 lines
2.1 KiB
Text
75 lines
2.1 KiB
Text
---
|
|
title: Quick Start
|
|
status: published
|
|
author: steveruizok
|
|
date: 3/22/2023
|
|
order: 0
|
|
---
|
|
|
|
<h2>Add a tldraw canvas to your React app in just 5 minutes.</h2>
|
|
|
|
The tldraw SDK provides a really simple way to craft infinite canvas experiences for the web. It's perfect for collaborative applications, productivity tools, interfacing with multi-modal AI, and more.
|
|
|
|
By the end of this guide you will have made something that looks like this:
|
|
|
|
<Embed className="article__embed--quickstart" src="https://examples.tldraw.com/develop" />
|
|
|
|
### 1. Installation
|
|
|
|
- Set up a React project however you normally do. [We recommend Vite](https://vitejs.dev/guide/#scaffolding-your-first-vite-project).
|
|
- Install the tldraw library using this command:
|
|
|
|
```bash
|
|
npm install @tldraw/tldraw@beta
|
|
```
|
|
|
|
### 2. Import Styles
|
|
|
|
To import fonts and CSS for tldraw:
|
|
|
|
- Create or edit a css file called `index.css`
|
|
- Copy and paste this into the file:
|
|
|
|
```CSS
|
|
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@500;700;&display=swap");
|
|
@import url("@tldraw/tldraw/tldraw.css");
|
|
|
|
body {
|
|
font-family: "Inter";
|
|
}
|
|
```
|
|
|
|
### 3. Render Tldraw Component
|
|
|
|
To render the Tldraw component
|
|
|
|
- Import the `<Tldraw />` component from `@tldraw/tldraw`
|
|
- Import the `index.css` CSS file from earlier
|
|
- Wrap the Tldraw component in a `<div>` element with the style attribute set to: `{ position: 'fixed', inset: 0 }`
|
|
|
|
This will render a full screen canvas:
|
|
|
|
```javascript
|
|
import { Tldraw } from "@tldraw/tldraw";
|
|
import "./index.css";
|
|
|
|
export default function App() {
|
|
return (
|
|
<div style={{ position: 'fixed', inset: 0 }}>
|
|
<Tldraw />
|
|
</div>
|
|
);
|
|
}
|
|
```
|
|
|
|
## Next Steps
|
|
|
|
Now that you have your canvas working, you may be wondering: what next?
|
|
|
|
You can try:
|
|
|
|
- Giving the editor a makeover by [customizing the UI](/docs/user-interface)
|
|
- Adding your own [shapes](/docs/shapes) and [tools](/docs/tools)
|
|
- Providing collaboration using [multiplayer](https://github.com/tldraw/tldraw-yjs-example)
|
|
|
|
We provide the above examples and more in our [examples section](/examples). Go build something creative and please do share it with us in our [#show-and-tell](https://discord.com/invite/SBBEVCA4PG) channel on Discord!
|