The complete guide to building Skills for Claude — covers fundamentals, planning, testing, distribution, patterns, and YAML frontmatter reference (converted from Anthropic's official PDF)
| #!/usr/bin/env python | |
| import boto3 | |
| import datetime | |
| import time | |
| ENABLED_REGIONS = [ | |
| "us-east-1", | |
| "us-west-2", | |
| "eu-west-1", | |
| "eu-central-1", |
| // # Mocha Guide to Testing | |
| // Objective is to explain describe(), it(), and before()/etc hooks | |
| // 1. `describe()` is merely for grouping, which you can nest as deep | |
| // 2. `it()` is a test case | |
| // 3. `before()`, `beforeEach()`, `after()`, `afterEach()` are hooks to run | |
| // before/after first/each it() or describe(). | |
| // | |
| // Which means, `before()` is run before first it()/describe() |
| import test from 'tape'; | |
| const before = test; | |
| const after = test; | |
| // beforeEach/afterEach rely on shared state. | |
| // That's a big anti-pattern for testing. | |
| // It's also silly to run something before and after | |
| // ever test -- many of your tests won't need it. |
| # https://help.shopify.com/api/guides/authentication/oauth#scopes | |
| scopes = [] | |
| scopes.append('read_content') | |
| scopes.append('write_content') | |
| scopes.append('read_themes') | |
| scopes.append('write_themes') | |
| scopes.append('read_products') | |
| scopes.append('write_products') | |
| scopes.append('read_customers') |
Whether you use 2 spaces or 4 spaces, there are a few simple things that can make your node.js code easier to read. We've been using them in all the hapi modules for over 4 years now to great results. This list is by no means complete but it highlights the most useful elements that will give you immediate value in reducing bugs.
JavaScript makes it harder than most languages to know where variables are coming from. Variables assigned required modules are particularly important because they represent a singleton object shared with the entire application. There are also globals and module globals, along with function variables and arguments.
Traditionally, variables starting with an uppercase letter represent a class that must be instantiated using new. This was an important semantic in the early days of JavaScript but at this point, if you don't know Date requires new Date() you are probably very new. We have adopted Upper Camel Case variable names for all module global variables
| 'use strict'; | |
| module.exports = function CustomError(message, extra) { | |
| Error.captureStackTrace(this, this.constructor); | |
| this.name = this.constructor.name; | |
| this.message = message; | |
| this.extra = extra; | |
| }; | |
| require('util').inherits(module.exports, Error); |
| 'use strict'; | |
| const statusCodes = require('http').STATUS_CODES; | |
| function createError(code, name) { | |
| return function(message) { | |
| Error.captureStackTrace(this, this.constructor); | |
| this.name = name; | |
| this.message = message; | |
| this.statusCode = code; | |
| } |
| from cssutils import profile | |
| from cssutils.profiles import Profiles, properties, macros | |
| #patch um up | |
| properties[Profiles.CSS_LEVEL_2]['-ms-interpolation-mode'] = r'none|bicubic|nearest-neighbor' | |
| properties[Profiles.CSS_LEVEL_2]['-ms-text-size-adjust'] = r'none|auto|{percentage}' | |
| properties[Profiles.CSS_LEVEL_2]['mso-table-lspace'] = r'0|{num}(pt)' | |
| properties[Profiles.CSS_LEVEL_2]['mso-table-rspace'] = r'0|{num}(pt)' | |
| properties[Profiles.CSS_LEVEL_2]['-webkit-text-size-adjust'] = r'none|auto|{percentage}' | |
| #re-add | |
| profile.addProfiles([(Profiles.CSS_LEVEL_2, |
An introduction to curl using GitHub's API.
Makes a basic GET request to the specifed URI
curl https://api.github.com/users/caspyin
Includes HTTP-Header information in the output