https://github.com/animify/dribbblejs
🏀 A Typescript-first Dribbble API library
https://github.com/animify/dribbblejs
dribbble dribbble-api dribbble-js typescript
Last synced: 21 days ago
JSON representation
🏀 A Typescript-first Dribbble API library
- Host: GitHub
- URL: https://github.com/animify/dribbblejs
- Owner: animify
- License: mit
- Created: 2020-02-09T14:54:05.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-01-05T07:01:46.000Z (over 2 years ago)
- Last Synced: 2025-05-12T21:48:34.684Z (24 days ago)
- Topics: dribbble, dribbble-api, dribbble-js, typescript
- Language: TypeScript
- Homepage:
- Size: 1.96 MB
- Stars: 13
- Watchers: 0
- Forks: 1
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[](https://codeclimate.com/github/animify/dribbblejs/maintainability)
A promise based, Typescript-first [Dribbble API](https://developer.dribbble.com/v2) library.
## Features
##### 🤖 Full Typescript support
##### 🌈 Familiar API setup
##### ⚡️ Feather light
##### 🚨 Proper error handling
##### 🧘♀️ Framework agnostic
## Getting Started
### Installation##### with Yarn
```
$ yarn add dribbblejs
```
##### or with NPM
```
$ npm install dribbblejs
```### Usage
```ts
import { Dribbble } from "dribbblejs";const dribbble = new Dribbble({
authToken: "xxxxxxxx"
});
```## API
### User> ##### [Official User API Documentation](https://developer.dribbble.com/v2/user/)
#### Get authenticated user
```ts
dribbble.user.get()
```---
### Projects> ##### [Official Projects API Documentation](https://developer.dribbble.com/v2/projects/)
#### Get list of projects
```ts
dribbble.projects.list()
```#### Create a project
```ts
dribbble.projects.create({
name: 'Project name', // *Required*
description: 'Project description' // Optional
})
```#### Update a project by `id`
```ts
dribbble.projects.update('883377', {
name: 'New project name', // Optional
description: 'New project description' // Optional
})
```#### Delete a project by `id`
```ts
dribbble.projects.delete('883377')
```---
### Shots
> ##### [Official Shots API Documentation](https://developer.dribbble.com/v2/shots/)
#### Get list of shots
```ts
dribbble.shots.list()
```
#### Get a shot by `id`
```ts
dribbble.shots.get('6432565')
```#### Create a shot
```ts
dribbble.shots.create({
image: imageFile // *Required*
title: 'Shot title', // *Required*
description: 'Shot description', // Optional
low_profile: true, // Optional
rebound_source_id: 6432542, // Optional
scheduled_for: 1582391638790, // Optional
tags: ['ui', 'illustration'], // Optional
team_id: 3818924 // Optional
})
```#### Update a shot by `id`
```ts
dribbble.shots.update('6432565', {
title: 'New shot title', // Optional
description: 'New shot description', // Optional
low_profile: true, // Optional
rebound_source_id: 6432542, // Optional
scheduled_for: 1582391638790, // Optional
tags: ['ui', 'illustration'], // Optional
team_id: 3818924 // Optional
})
```#### Delete a shot by `id`
```ts
dribbble.shots.delete('6432565')
```---
### Attachments API
> ##### [Official Attachments API Documentation](https://developer.dribbble.com/v2/attachments/)
#### Create attachment for a `shot`
```ts
dribbble.attachments.create('6432565', {
file: attachmentFile // *Required*
})
```#### Delete attachment `id` for a `shot`
```ts
dribbble.attachments.delete('1376676', '6432565')
```---
### License
Dribbblejs is [MIT licensed](./LICENSE).