Setup a Dev Environment

Welcome to Jyn's Basics of Engineering Environments

Designer Development Environment Setup Guide

Pre-Workshop Checklist

Please install the following before the workshop:

Workshop Steps

1. Create GitHub Account

  1. Go to github.com
  2. Click "Sign up"
  3. Choose a username (tip: use something professional)
  4. Verify your email address

2. Set Up GitHub Desktop

  1. Open GitHub Desktop
  2. Click "Sign in to GitHub.com"
  3. Sign in with your GitHub account
  4. Configure your Git settings:
    • Name: Your full name
    • Email: The email you used for GitHub
  5. Click "Finish"

3. Create Your Projects Folder

  1. Open GitHub Desktop
  2. Go to Preferences/Options → Integrations
  3. Note the default folder location (usually ~/Documents/GitHub)
  4. This is where all your projects will live!

4. Fork the Repository

  1. Go to the original repository on GitHub
  2. Click the "Fork" button (top right)
  3. Select your account as the destination

5. Clone Your Fork with GitHub Desktop

  1. Click "Clone a Repository from the Internet..."
  2. Go to the "GitHub.com" tab
  3. Find your forked repository in the list
  4. Click "Clone"
  5. Wait for the download to complete

6. Open in Cursor

  1. In GitHub Desktop, click "Open in Visual Studio Code" button
  2. If Cursor isn't listed, click "Open in..." and browse to Cursor
  3. Or simply open Cursor and File → Open Folder → select your project

7. Create Your First Branch

  1. In GitHub Desktop, click "Current Branch" dropdown
  2. Click "New Branch"
  3. Name it something descriptive (e.g., "add-my-bio")
  4. Click "Create Branch"

Git Concepts for Designers

Key Terms

  • Repository (Repo): A project folder tracked by Git
  • Fork: Your personal copy of someone else's repository
  • Clone: Download a repository to your computer
  • Branch: An independent line of development (like a Figma branch)
  • Commit: A saved snapshot of your changes (like saving a Figma file)
  • Push: Upload your changes to GitHub
  • Pull: Download changes from GitHub

Visual Workflow

Cursor (Edit)    →    GitHub Desktop (Save)    →    GitHub.com (Share)
     ↓                        ↓                           ↓
  Make changes          Commit changes              Push to cloud
code

GitHub Desktop Interface

┌─────────────────────────────────────────┐
│ Current Repository ▼ │ Current Branch ▼ │
├─────────────────────────────────────────┤
│ Changes │ History                       │
├─────────┴────────────────────────────────┤
│ ✓ file1.md                              │
│ ✓ file2.js          │  Diff View       │
│                     │  - old code      │
│ Summary             │  + new code      │
│ [_______________]   │                  │
│                     │                  │
│ Description         │                  │
│ [_______________]   │                  │
│                     │                  │
│ [Commit to main]    │                  │
└─────────────────────────────────────────┘
code

Cursor Setup for Designers

Why Cursor?

Cursor is an AI-powered code editor that helps you write code faster with AI assistance. Perfect for designers learning to code!

Key Features

  • AI Chat - Ask questions about your code directly in the editor
  • AI Autocomplete - Get intelligent code suggestions as you type
  • Generate Code - Describe what you want and Cursor will write it
  • Explain Code - Highlight any code and ask Cursor to explain it
  1. GitLens - Visualize Git history
  2. Prettier - Auto-format code
  3. Live Server - Preview HTML files
  4. Color Highlight - See colors in your code
  5. Material Icon Theme - Better file icons

Install Extensions

  1. Open Cursor
  2. Click Extensions icon (or Cmd/Ctrl + Shift + X)
  3. Search and install each extension

Cursor AI Tips

  • Press Cmd/Ctrl + K to generate code
  • Press Cmd/Ctrl + L to open AI chat
  • Highlight code and press Cmd/Ctrl + Shift + L to ask about it

GitHub Desktop Workflow

Making Changes

  1. Edit files in Cursor
  2. See changes in GitHub Desktop (left sidebar)
  3. Review changes in the diff view (right panel)
  4. Write commit message (bottom left)
  5. Click "Commit to [branch]"
  6. Push changes with "Push origin" button

Common Actions in GitHub Desktop

ActionHow to Do It
See what changedLook at the "Changes" tab
Save your workWrite message → Commit
Upload to GitHubClick "Push origin"
Get latest changesClick "Fetch origin" → "Pull"
Switch branchesCurrent Branch dropdown → Select
Create new branchCurrent Branch → New Branch
Undo last commitHistory → Right-click → "Undo Commit"
Discard changesRight-click file → "Discard Changes"

Troubleshooting

Can't sign in to GitHub Desktop

  • Make sure you're using the right email/password
  • Try signing in through the browser instead
  • Check if two-factor authentication is enabled

"Repository not found" when cloning

  • Make sure you forked it first
  • Refresh the repository list (Cmd/Ctrl + R)
  • Try cloning from URL instead

Changes not showing up

  • Save your files in Cursor first (Cmd/Ctrl + S)
  • Click "Fetch origin" to refresh
  • Make sure you're on the right branch

Merge conflicts

  • Don't panic! This happens when two people edit the same file
  • GitHub Desktop will show you the conflicts
  • Click "Open in Cursor" to resolve
  • Ask Cursor's AI: "Help me resolve this merge conflict"

"Failed to push"

  • Click "Fetch origin" first
  • You might need to pull changes before pushing
  • Check if you have write access to the repository

Post-Setup Verification

Check Everything is Working:

  1. GitHub Desktop
    • Can you see your cloned repository?
    • Does it show your GitHub username in the top left?
  2. Cursor
    • Can you open your project from GitHub Desktop?
    • Try making a small change to see if it appears in GitHub Desktop
  3. Test the Workflow
    • Make a small edit (like adding your name to a README)
    • See the change in GitHub Desktop
    • Commit with a message like "Test commit"
    • Push to GitHub
    • Check github.com to see if your change is there!

Creating Your First Pull Request

With GitHub Desktop:

  1. Make your changes and commit them
  2. Push to GitHub (Push origin button)
  3. Click "Create Pull Request" button in GitHub Desktop
  4. This opens GitHub in your browser
  5. Add a title describing what you changed
  6. Add a description with more details
  7. Click "Create pull request"
  8. Wait for review and feedback!

Pull Request Best Practices:

  • Keep changes small and focused
  • Write clear commit messages
  • Test your changes first
  • Add screenshots if it's visual
  • Be patient with feedback

Next Steps

  • Make your first commit using GitHub Desktop
  • Create your first pull request
  • Join team Slack/Discord
  • Star the repository you're working on
  • Explore other repositories to fork and contribute to

Resources


Remember: GitHub Desktop handles all the complex Git stuff for you. Focus on creating, not on commands!

🎨 Designer-Friendly Resources

Visual Learning

Design to Code Tools

💡 Quick Tips

GitHub Desktop Shortcuts

  • Cmd/Ctrl + Shift + A - Open in Cursor
  • Cmd/Ctrl + Shift + F - Open in Finder/Explorer
  • Cmd/Ctrl + R - Refresh repository
  • Cmd/Ctrl + P - Push changes
  • Cmd/Ctrl + Shift + P - Pull changes

Cursor AI Commands

  • Cmd/Ctrl + K - Generate code
  • Cmd/Ctrl + L - Chat with AI
  • Highlight + Cmd/Ctrl + K - Edit selection
  • Highlight + Cmd/Ctrl + L - Ask about selection

Common Gotchas

  • Always save files before checking GitHub Desktop
  • Pull before push to avoid conflicts
  • Small commits are better than large ones
  • Test locally before pushing
  • Read error messages - they usually tell you what's wrong!

🚀 Starter Code Examples

Simple JavaScript Interactions

// Change colors on click
document.querySelector('.color-button').addEventListener('click', () => {
    document.body.style.backgroundColor = '#' + Math.floor(Math.random()*16777215).toString(16);
});

// Show/hide elements
function toggleElement(id) {
    const element = document.getElementById(id);
    element.style.display = element.style.display === 'none' ? 'block' : 'none';
}

// Smooth scroll to section
function scrollToSection(sectionId) {
    document.getElementById(sectionId).scrollIntoView({ 
        behavior: 'smooth' 
    });
}
code

React Component (Advanced)

// A simple component designers might build
function DesignCard({ title, description, imageUrl }) {
    return (
        <div className="card">
            <img src={imageUrl} alt={title} />
            <h3>{title}</h3>
            <p>{description}</p>
            <button>Learn More</button>
        </div>
    );
}
code

🎯 Designer Challenges

Week 1: HTML/CSS

  • Create a personal bio page
  • Style it with your brand colors
  • Make it responsive

Week 2: JavaScript

  • Add dark mode toggle
  • Create an image gallery
  • Add hover animations

Week 3: Git/GitHub

  • Fork a project
  • Fix a typo in docs
  • Submit your first PR

Week 4: Build Something!

  • Portfolio site
  • Design system docs
  • Interactive prototype

🔗 Communities

Designer-Coders

Getting Help

  1. HTML/CSS (2-4 weeks)

    • Structure & styling
    • Flexbox & Grid
    • Responsive design
  2. JavaScript Basics (2-4 weeks)

    • Variables & functions
    • DOM manipulation
    • Event handling
  3. Version Control (1 week)

    • GitHub Desktop
    • Commits & branches
    • Pull requests
  4. Framework (4-8 weeks)

    • React or Vue
    • Components
    • State management
  5. Build Projects!

    • Start small
    • Copy things you like
    • Make it your own

Remember: Every developer was once a beginner. You're a designer - you already understand user experience, visual hierarchy, and problem-solving. You've got this! 🎨💪