diff --git a/README.md b/README.md index 83757b22f3..b96635f208 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,8 @@ [![Chat on discord](https://img.shields.io/discord/801163717915574323?label=discord)](https://discord.gg/jyEM2PRvMU) [![Build Status](https://github.com/apify/apify-sdk-js/actions/workflows/test-and-release.yaml/badge.svg?branch=master)](https://github.com/apify/apify-sdk-js/actions/workflows/test-and-release.yaml) +`apify` is the official SDK for building [Apify Actors](https://docs.apify.com/platform/actors) in JavaScript and TypeScript. It handles the Actor lifecycle, storage access, platform events, proxy configuration, and more. + ## Quick Start This short tutorial will set you up to start using Apify SDK in a minute or two. @@ -35,6 +37,26 @@ await Actor.exit(); > You can also install the [`crawlee`](https://npmjs.org/crawlee) module, as it now provides the crawlers that were previously exported by Apify SDK. If you don't plan to use crawlers in your Actors, then you don't need to install it. Keep in mind that neither `playwright` nor `puppeteer` are bundled with `crawlee` in order to reduce install size and allow greater flexibility. That's why we manually install it with NPM. You can choose one, both, or neither. For more information and example please check [`documentation.`](https://docs.apify.com/sdk/js/docs/concepts/actor-lifecycle#running-crawlee-code-as-an-actor) +## What are Actors? + +Actors are serverless programs that can do almost anything. From simple scripts and web scrapers to complex automation workflows, AI agents, or even always-on services that expose HTTP endpoints. + +They can run either locally or on the Apify platform, where you can scale their execution, monitor runs, schedule tasks, integrate them with other services, or even publish and monetize them. If you're new to Apify, learn more about the platform in the [Apify documentation](https://docs.apify.com/platform/about). + +For more context, read the [Actor whitepaper](https://whitepaper.actor/). + +## What you can build + +Almost any Node.js project can become an Actor, including projects for: + +- **Web scraping and crawling** - The SDK works seamlessly with [Crawlee](https://crawlee.dev), which makes Apify a natural place to deploy and scale your crawlers. Start from a ready-made [Cheerio](https://apify.com/templates/js-crawlee-cheerio) template. +- **Browser automation** - Drive a real browser with [Playwright](https://playwright.dev), [Puppeteer](https://pptr.dev), or [Selenium](https://apify.com/apify/example-selenium) to automate tasks, fill in forms, or test web apps. +- **AI agents** - Host agents built with your framework of choice. Ready-made Actor templates cover [LangChain](https://apify.com/templates/js-langchain), [LangGraph](https://apify.com/templates/js-langgraph-agent), [BeeAI](https://apify.com/templates/ts-beeai-agent), and [Mastra](https://apify.com/templates/ts-mastraai). +- **MCP servers** - Deploy an MCP server as an Actor and make its tools available to any MCP client. See the [MCP server](https://apify.com/templates/ts-mcp-empty) and [MCP proxy](https://apify.com/templates/ts-mcp-proxy) templates. +- **Web servers and APIs** - Run a web server inside an Actor to serve HTTP requests, for example to expose your scraper as a live API. See the [Standby](https://apify.com/templates/js-standby) templates. + +Whatever you build, the Apify SDK doesn't lock you into a particular framework. Bring the libraries you already use, and let Apify run your project in the cloud. + ## Support If you find any bug or issue with the Apify SDK, please [submit an issue on GitHub](https://github.com/apify/apify-sdk-js/issues). diff --git a/docs/01_introduction/index.md b/docs/01_introduction/index.md index f49ab9c1e2..f23fd9326f 100644 --- a/docs/01_introduction/index.md +++ b/docs/01_introduction/index.md @@ -3,7 +3,7 @@ id: introduction title: Apify SDK for JavaScript sidebar_label: Overview slug: /overview -description: 'The official library for creating Apify Actors in JavaScript, providing tools for web crawling, scraping, and automation at scale.' +description: 'The official library for creating Apify Actors in JavaScript and TypeScript, for web scraping, browser automation, AI agents, and more.' --- The Apify SDK for JavaScript is the official library for creating [Apify Actors](https://docs.apify.com/platform/actors) using JavaScript or TypeScript. It provides useful features like Actor lifecycle management, local storage emulation, and Actor event handling. @@ -19,11 +19,25 @@ console.log(input); await Actor.exit(); ``` -## What are Actors +## What are Actors? -Actors are serverless cloud programs capable of performing tasks in a web browser, similar to what a human can do. These tasks can range from simple operations, such as filling out forms or unsubscribing from services, to complex jobs like scraping and processing large numbers of web pages. +Actors are serverless programs that can do almost anything. From simple scripts and web scrapers to complex automation workflows, AI agents, or even always-on services that expose HTTP endpoints. -Actors can be executed locally or on the [Apify platform](https://docs.apify.com/platform). The Apify platform lets you run Actors at scale and provides features for monitoring, scheduling, publishing, and monetizing them. +They can run either locally or on the Apify platform, where you can scale their execution, monitor runs, schedule tasks, integrate them with other services, or even publish and monetize them. If you're new to Apify, learn more about the platform in the [Apify documentation](https://docs.apify.com/platform/about). + +For more context, read the [Actor whitepaper](https://whitepaper.actor/). + +## What you can build + +Almost any Node.js project can become an Actor, including projects for: + +- **Web scraping and crawling** - The SDK works seamlessly with [Crawlee](https://crawlee.dev), which makes Apify a natural place to deploy and scale your crawlers. Start from a ready-made [Cheerio](https://apify.com/templates/js-crawlee-cheerio) template. +- **Browser automation** - Drive a real browser with [Playwright](guides/playwright-crawler), [Puppeteer](guides/puppeteer-crawler), or [Selenium](https://apify.com/apify/example-selenium) to automate tasks, fill in forms, or test web apps. +- **AI agents** - Host agents built with your framework of choice. Ready-made Actor templates cover [LangChain](https://apify.com/templates/js-langchain), [LangGraph](https://apify.com/templates/js-langgraph-agent), [BeeAI](https://apify.com/templates/ts-beeai-agent), and [Mastra](https://apify.com/templates/ts-mastraai). +- **MCP servers** - Deploy an MCP server as an Actor and make its tools available to any MCP client. See the [MCP server](https://apify.com/templates/ts-mcp-empty) and [MCP proxy](https://apify.com/templates/ts-mcp-proxy) templates. +- **Web servers and APIs** - Run a web server inside an Actor to serve HTTP requests, for example to expose your scraper as a live API. See the [Standby mode](https://docs.apify.com/platform/actors/development/programming-interface/standby) templates ([JavaScript](https://apify.com/templates/js-standby), [TypeScript](https://apify.com/templates/ts-standby)). + +Whatever you build, the Apify SDK doesn't lock you into a particular framework. Bring the libraries you already use, and let Apify run your project in the cloud. ## Quick start diff --git a/website/versioned_docs/version-3.4/01_introduction/index.md b/website/versioned_docs/version-3.4/01_introduction/index.md index f49ab9c1e2..06491d2cd0 100644 --- a/website/versioned_docs/version-3.4/01_introduction/index.md +++ b/website/versioned_docs/version-3.4/01_introduction/index.md @@ -3,7 +3,7 @@ id: introduction title: Apify SDK for JavaScript sidebar_label: Overview slug: /overview -description: 'The official library for creating Apify Actors in JavaScript, providing tools for web crawling, scraping, and automation at scale.' +description: 'The official library for creating Apify Actors in JavaScript and TypeScript, for web scraping, browser automation, AI agents, and more.' --- The Apify SDK for JavaScript is the official library for creating [Apify Actors](https://docs.apify.com/platform/actors) using JavaScript or TypeScript. It provides useful features like Actor lifecycle management, local storage emulation, and Actor event handling. @@ -21,10 +21,22 @@ await Actor.exit(); ## What are Actors -Actors are serverless cloud programs capable of performing tasks in a web browser, similar to what a human can do. These tasks can range from simple operations, such as filling out forms or unsubscribing from services, to complex jobs like scraping and processing large numbers of web pages. +Actors are serverless programs that can do almost anything. From simple scripts and web scrapers to complex automation workflows, AI agents, or even always-on services that expose HTTP endpoints. Actors can be executed locally or on the [Apify platform](https://docs.apify.com/platform). The Apify platform lets you run Actors at scale and provides features for monitoring, scheduling, publishing, and monetizing them. +## What you can build + +Almost any Node.js project can become an Actor, including projects for: + +- **Web scraping and crawling** - The SDK works seamlessly with [Crawlee](https://crawlee.dev), which makes Apify a natural place to deploy and scale your crawlers. Start from a ready-made [Cheerio](https://apify.com/templates/js-crawlee-cheerio) template. +- **Browser automation** - Drive a real browser with [Playwright](guides/playwright-crawler), [Puppeteer](guides/puppeteer-crawler), or [Selenium](https://apify.com/apify/example-selenium) to automate tasks, fill in forms, or test web apps. +- **AI agents** - Host agents built with your framework of choice. Ready-made Actor templates cover [LangChain](https://apify.com/templates/js-langchain), [LangGraph](https://apify.com/templates/js-langgraph-agent), [BeeAI](https://apify.com/templates/ts-beeai-agent), and [Mastra](https://apify.com/templates/ts-mastraai). +- **MCP servers** - Deploy an MCP server as an Actor and make its tools available to any MCP client. See the [MCP server](https://apify.com/templates/ts-mcp-empty) and [MCP proxy](https://apify.com/templates/ts-mcp-proxy) templates. +- **Web servers and APIs** - Run a web server inside an Actor to serve HTTP requests, for example to expose your scraper as a live API. See the [Standby mode](https://docs.apify.com/platform/actors/development/programming-interface/standby) templates ([JavaScript](https://apify.com/templates/js-standby), [TypeScript](https://apify.com/templates/ts-standby)). + +Whatever you build, the Apify SDK doesn't lock you into a particular framework. Bring the libraries you already use, and let Apify run your project in the cloud. + ## Quick start To create and run Actors using Apify Console, check out [Apify Console documentation](https://docs.apify.com/platform/console). For creating and running JavaScript Actors locally, refer to the [Actor lifecycle guide](concepts/actor-lifecycle).