
Security News
Vite+ Joins the Push to Consolidate JavaScript Tooling
Evan You announces Vite+, a commercial, Rust-powered toolchain built on the Vite ecosystem to unify JavaScript development and fund open source.
apify-actor-config
Advanced tools
Write Apify actor config in JS/TS 😇
actor.json
in JS/TSactor.js
to JSONnpm i apify-actor-config
The file must export the config as the default export
See full example in ./examples/config.ts.
import {
createActorConfig,
createActorInputSchema,
createBooleanField,
createIntegerField,
createObjectField,
createStringField,
createArrayField,
Field,
ActorInputSchema,
} from 'apify-actor-config';
// Define fields, typed based on their "type" and "editor" properties.
const proxyInput: Record<'proxy', Field> = {
proxy: createObjectField({
title: 'Proxy configuration',
type: 'object',
description: 'Select proxies to be used by your crawler.',
editor: 'proxy',
sectionCaption: 'Proxy',
sectionDescription: 'Configure the proxy',
}),
};
// Define input schema
const inputSchema = createActorInputSchema<ActorInputSchema<Record<keyof ActorInput, Field>>>({
schemaVersion: 1,
title: 'Example Scraper',
description: `Configure the Example Scraper.`,
type: 'object',
properties: {
...proxyInput,
},
});
// Define output schema
const outputSchema = createActorOutputSchema({
actorSpecification: 1,
fields: {
/** ... */
},
views: {
/** ... */
},
});
// Now put it all together into Actor config
const config = createActorConfig({
actorSpecification: 1,
name: 'example-scraper',
title: 'Example Scraper',
description: 'Actor config example showcasing config written in JS/TS',
version: '0.1',
dockerfile: './Dockerfile',
input: inputSchema,
storages: {
dataset: outputSchema,
}
});
// IMPORTANT: Export as default
export default config;
If you use TS, first compile the project.
Then generate actor.json
file with apify-actor-config gen
command.
Use -c
or --config
option to specify path to config JS file:
npx apify-actor-config gen -c ./path/to/config.js
By default, actor.json
will be saved to ./.actor
directory, if it exists, or otherwise to your current working directory.
To specify the output directory, set the -o
or --output
option
npx apify-actor-config gen -c ./path/to/config.js -o ./other/path/dir
To see all options, use
npx apify-actor-config gen -h
This library provides full typing for all Actor config objects:
Included are also helper functions to create typed objects:
See the files in ./src/types directory for full details.
FAQs
Types and utils for Apify Actor config
We found that apify-actor-config demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Evan You announces Vite+, a commercial, Rust-powered toolchain built on the Vite ecosystem to unify JavaScript development and fund open source.
Security News
Ruby Central’s incident report on the RubyGems.org access dispute sparks backlash from former maintainers and renewed debate over project governance.
Research
/Security News
Socket researchers uncover how threat actors weaponize Discord across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.