Skip to content

Add motion extension #17756

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions extensions/motion/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"root": true,
"extends": ["@raycast"]
}
37 changes: 37 additions & 0 deletions extensions/motion/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules

# Raycast specific files
raycast-env.d.ts
.raycast-swift-build
.swiftpm
compiled_raycast_swift

# misc
.DS_Store

# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Build files
dist/
build/
.raycast/

# Environment
.env
.env.local
.env.development.local
.env.test.local
.env.production.local

# IDE files
.idea/
.vscode/
*.code-workspace
11 changes: 11 additions & 0 deletions extensions/motion/.prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"printWidth": 100,
"tabWidth": 2,
"useTabs": false,
"semi": true,
"singleQuote": false,
"trailingComma": "es5",
"bracketSpacing": true,
"arrowParens": "always",
"endOfLine": "lf"
}
3 changes: 3 additions & 0 deletions extensions/motion/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Motion Changelog

## [Initial Version] - {PR_MERGE_DATE}
77 changes: 77 additions & 0 deletions extensions/motion/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Motion Raycast Extension

A Raycast extension for interacting with the [Motion](https://www.usemotion.com/) task management platform directly from your desktop.

## Features

- **Add Task**: Quickly create new tasks with title, description, due date, priority, project, and label
- **Edit Task**: View and edit your existing tasks, including updating priorities, deadlines, and project assignments
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

logic: The 'Edit Task' feature is listed in the README but there is no corresponding command in package.json or implementation file

- **Delete Task**: Easily delete tasks from your Motion account
- **Workspace Details**: View your Motion workspaces and get workspace IDs necessary for task creation
- **List Tasks**: Browse, search, and filter your Motion tasks by name, label, and project
- **Ask Motion**: Use AI to ask questions about your tasks, deadlines, and schedule

## Installation

### Option 1: Install from Raycast Store (Recommended)
1. Install the extension from the Raycast store.
2. Set up your Motion API credentials:
- Get your API key from Motion's developer settings
- Use the "Workspace Details" command to find your workspace ID
- Add these to the extension preferences in Raycast

### Option 2: Development Setup
1. Clone this repository
2. Open the directory in your terminal
3. Run `npm install` to install dependencies
4. Run `npm run dev` to start the development server

## Configuration

1. Get your Motion API key from the Motion platform's developer settings
2. Find your workspace ID using the "Workspace Details" command in the extension
3. Configure the extension with your API key and workspace ID in Raycast preferences

## Usage

### Adding Tasks
- Use the "Add Task" command to quickly create new tasks
- Fill in the task details including name, description, due date, priority, and more
- Click "Create Task" to add the task to your Motion account

### Editing Tasks
- Use the "Edit Task" command to view and modify existing tasks
- Search for tasks by name or description
- Select a task to edit its properties
- Click "Update Task" to save your changes

### Deleting Tasks
- Use the "Delete Task" command to remove tasks from your Motion account
- Select a task from the list and confirm deletion

### Viewing Workspaces
- Use the "Workspace Details" command to view all available Motion workspaces
- This is useful for finding your workspace ID for configuration

## Development

This extension is built with:
- React
- Raycast API
- TypeScript

## License

MIT

## Author

Created by Owen Price

```bash
# Install dependencies
npm install

# Start development server
npm run dev
```
Comment on lines +71 to +77
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

style: Code block should be removed since these commands are already documented in the Installation section

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
18 changes: 18 additions & 0 deletions extensions/motion/metadata/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Screenshots for Motion Extension
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we have a markdown file in metadata? Let's remove it


Add screenshots of your extension in action here. You'll need at least one screenshot for each view command:

1. `add-task.tsx` - Screenshot of the Add Task form
2. `list-tasks.tsx` - Screenshot showing a list of tasks
3. `edit-task.tsx` - Screenshot of the Edit Task form
4. `delete-task.tsx` - Screenshot of the Delete Task view
5. `debug-workspaces.tsx` - Screenshot of the Workspace Details view
Comment on lines +5 to +9
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

logic: The file mentions edit-task.tsx but this command is not defined in package.json. Either remove this line or add the command to package.json


## Requirements

- Screenshots should be in PNG format
- Name your screenshots descriptively (e.g., `add-task-screenshot.png`)
- Make sure each screenshot shows your extension working with real data
- Try to showcase the main functionality of each command

These screenshots will be displayed in the Raycast Store to help users understand your extension.
Binary file added extensions/motion/metadata/Workspace-details.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added extensions/motion/metadata/edit-task.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading