Skip to main content

Built and signed on GitHub Actions

Works with
This package works with Node.js, Deno, Bun
This package works with Node.js
This package works with Deno
This package works with Bun
JSR Score76%
License
MIT
Downloads1/wk
Published2 days ago (2.1.2)

Project initializer for Fedify

@fedify/init: Project initializer for Fedify

JSR npm

This package provides the project initialization functionality for Fedify, an ActivityPub server framework. It scaffolds new Fedify project directories with support for various web frameworks, package managers, key-value stores, and message queues.

This package powers the fedify init command in the @fedify/cli toolchain, and can also be used as a standalone library.

Supported options

The initializer supports the following project configurations:

  • Web frameworks: Bare-bones, Hono, Nitro, Next.js, Elysia, Express
  • Package managers: Deno, pnpm, Bun, Yarn, npm
  • Key-value stores: In-Memory, Deno KV, Redis, PostgreSQL
  • Message queues: In-Process, Deno KV, Redis, PostgreSQL, AMQP

Installation

deno add jsr:@fedify/init  # Deno
npm  add     @fedify/init  # npm
pnpm add     @fedify/init  # pnpm
yarn add     @fedify/init  # Yarn
bun  add     @fedify/init  # Bun

API

The package exports the following:

  • runInit: The main initialization action handler.
  • initCommand: The CLI command definition for init.
import { initCommand, runInit } from "@fedify/init";

Test

The test-init task is useful for contributors working on @fedify/init, especially when adding support for a new framework/library or modifying the scaffolding logic. It tests the project initialization by running fedify init across all combinations of supported options on temporary directories, verifying that the generated projects are valid.

To run the test using Deno:

deno task test-init

Or using pnpm:

pnpm test-init

You can also filter specific options to test a subset of combinations:

deno task test-init -w hono -p deno

Use --no-dry-run to test with actual file creation and dependency installation, or --no-hyd-run to only log outputs without creating files.

Built and signed on
GitHub Actions

Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@fedify/init

Import symbol

import * as init from "@fedify/init";
or

Import directly with a jsr specifier

import * as init from "jsr:@fedify/init";