Skip to content

Introduction

Although you can use any framework to build an ActivityPods-compatible application, we provide packages to make it easier with Refine, a React framework for data-intensive applications. Refine handles data fetching, caching (with TanStack Query), forms and routing, and leaves you free to choose your UI library.

Package Content
@activitypods/refine-providers The auth provider and the data provider, with no UI
@activitypods/refine-hooks React hooks to handle the login flow, the app status and ActivityPub collections
@activitypods/refine-antd Ready-made components (login page, background checks) for Ant Design

The app boilerplate uses these three packages, with Ant Design. If your app doesn’t need a backend, follow the guide Create an app without a backend, or have a look at the frontend-only example app.

Terminal window
yarn add @activitypods/refine-providers @activitypods/refine-hooks @activitypods/refine-antd

If you prefer another UI library, you only need @activitypods/refine-providers and @activitypods/refine-hooks: the components of @activitypods/refine-antd are thin layers above the hooks.

The API of each package is described in the Reference: refine-providers, refine-hooks and refine-antd. Apps without a backend also use app-manifest.