npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@arikajs/cli

v0.0.4

Published

The command-line interface for the ArikaJS framework.

Readme

@arikajs/cli

The Official Command-Line Interface for ArikaJS

npm version License: MIT


📦 Installation & Usage

Option 1: Use with npx (Recommended)

The fastest way to use the ArikaJS CLI without installing it globally:

npx @arikajs/cli new my-app

Option 2: Global Installation

Install the CLI globally to use the arika command anywhere:

npm install -g @arikajs/cli

# Then use directly:
arika new my-app

🚀 Quick Start

Create a new ArikaJS application:

# Create a new project
arika new my-awesome-app

# Navigate to your project
cd my-awesome-app

# Install dependencies
npm install

# Start the development server
npm run dev

Your application will be running at http://localhost:8000 🎉


📋 Available Commands

arika new <name>

Create a new ArikaJS application.

arika new my-app

Options:

  • <name> - The name of your application

Interactive Prompts:

  • Install dependencies automatically? (Y/n)

What it does:

  • Creates a new directory with your app name
  • Scaffolds the complete application structure
  • Sets up configuration files
  • Generates a secure application key
  • Optionally installs npm dependencies

arika serve

Start the development server.

# Start in development mode with hot-reload
arika serve --dev

# Start in production mode
arika serve

Options:

  • --dev - Run with TypeScript hot-reload using tsx
  • --port <port> - Specify the port (default: from .env or 8000)

arika key:generate

Generate a new application encryption key.

arika key:generate

What it does:

  • Generates a secure random 32-character key
  • Updates your .env file with APP_KEY
  • Required for encryption, sessions, and security features

arika migrate

Run database migrations.

# Run all pending migrations
arika migrate

# Rollback the last batch of migrations
arika migrate:rollback

# Rollback all migrations
arika migrate:reset

# Rollback and re-run all migrations
arika migrate:refresh

arika make:migration <name>

Create a new database migration.

arika make:migration create_users_table

What it does:

  • Creates a new migration file in database/migrations/
  • Includes timestamp prefix for ordering
  • Provides template with up() and down() methods

Example output:

database/migrations/0001_create_users_table.ts

arika queue:table

Create the database table for queue jobs.

arika queue:table

What it does:

  • Creates a migration for the jobs table
  • Sets up the schema for background job processing

📁 Project Structure

When you create a new project with arika new, you get this structure:

my-app/
├── app/
│   ├── Controllers/          # HTTP controllers
│   ├── Models/              # Database models
│   ├── Middleware/          # Custom middleware
│   └── Http/
│       └── Kernel.ts        # HTTP kernel configuration
├── bootstrap/
│   └── app.ts              # Application bootstrap
├── config/                  # Configuration files
│   ├── app.ts
│   ├── database.ts
│   └── logging.ts
├── database/
│   └── migrations/         # Database migrations
├── routes/
│   └── web.ts             # Route definitions
├── .env                    # Environment variables
├── .env.example           # Environment template
├── server.ts              # Application entry point
├── tsconfig.json          # TypeScript configuration
└── package.json           # npm dependencies

🔧 Configuration

The CLI respects your project's configuration:

Environment Variables

Create a .env file in your project root:

APP_NAME=MyApp
APP_ENV=development
APP_KEY=your-32-character-secret-key
APP_PORT=8000

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=myapp
DB_USERNAME=root
DB_PASSWORD=secret

TypeScript Configuration

The generated tsconfig.json is optimized for ArikaJS:

{
  "compilerOptions": {
    "target": "ES2022",
    "module": "commonjs",
    "outDir": "./dist",
    "rootDir": "./",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true
  }
}

🎯 Usage Examples

Creating a New Project

# Create a new project
$ arika new blog-api

🚀 Creating a new ArikaJS application: /path/to/blog-api

? Would you like to install dependencies automatically? Yes

Scaffolding project in /path/to/blog-api...
Installing dependencies...

✨ Project created successfully!

Next steps:
  cd blog-api
  npm run dev

Happy coding with ArikaJS!

Starting Development Server

$ cd blog-api
$ arika serve --dev

Starting ArikaJS development server...
Using tsx to run TypeScript server with hot-reload...
🚀 Starting ArikaJS application...
[2026-02-15 19:00:00] INFO: ArikaJS application listening on http://localhost:8000

Running Migrations

# Create a migration
$ arika make:migration create_posts_table
✅ Created migration: database/migrations/0001_create_posts_table.ts

# Run migrations
$ arika migrate
Migrating: 0001_create_posts_table
Migrated:  0001_create_posts_table

🛠️ Development

Building from Source

# Clone the repository
git clone https://github.com/arikajs/cli.git
cd cli

# Install dependencies
npm install

# Build the CLI
npm run build

# Link for local development
npm link

Testing

# Run tests
npm test

# Run tests in watch mode
npm run test:watch

📚 Related Packages

The CLI works seamlessly with the ArikaJS ecosystem:


🤝 Contributing

We welcome contributions! Please see our Contributing Guide.


📝 License

The ArikaJS CLI is open-sourced software licensed under the MIT license.


💬 Support


Part of the ArikaJS Framework

GitHubnpm