alkademi-cli

Official CLI tool to scaffold features and plugins for the Alkademi Open Source LMS.
201
Install
npm install alkademi-cli
Latest Version:1.0.0
License:MIT
Last Updated:Jun 23, 2026
Links: npm
Maintainer: hanifakmaludin

Alkademi LMS CLI

🚀 Alkademi LMS CLI is a powerful command-line interface tool designed specifically to supercharge the development workflow of the open-source Alkademi LMS Monolith project (built with Nuxt 4).

It provides developers with an easy way to scaffold dynamic features, core modules, and plugins, perfectly structured for the Alkademi architecture.

📚 Official Documentation: https://alkademi-lms-docs.vercel.app/id

Features

  • Dynamic Scaffolding: Instantly generate fully-structured modules with dynamic names.
  • Pre-configured Templates: Automatically creates stores, api endpoints, pages, components, and types with the correct boilerplate tailored to your module name.
  • Nuxt 4 Ready: Follows best practices for Nuxt 4 application architecture.
  • Standardized Workflow: Ensures all contributors build features that align with the Alkademi LMS ecosystem.

Installation

You can install the CLI globally using npm:

npm install -g alkademi-cli

(Alternatively, you can run it directly using npx alkademi-cli without installing globally).

Usage

1. Scaffold Module Baru

The primary command for scaffolding is the add command.

alkademi add <type> <name>
Arguments:
  • <type>: The type of module you want to create. Currently supports core or plugin.
  • <name>: The name of the module/feature (e.g., class, assignment, user).
Example:
alkademi add core assignment

What happens when you run this? The CLI will automatically generate a dynamic template inside the cores/assignment directory, creating:

  • types/index.ts (with Assignment interfaces)
  • stores/useAssignmentStore.ts (Pinia store)
  • server/api/assignment/ (CRUD endpoints for the assignment)
  • pages/dashboard/assignment/ (Vue pages for listing, creating, and viewing details)
  • components/ (AssignmentCard.vue, AssignmentForm.vue, etc.)

Everything is automatically linked, typed, and named according to your input!

2. Install Base Project

Untuk mendownload dan menginisialisasi LMS Monolith base project setup di direktori baru:

alkademi install [project-name] [options]
Options:
  • -t, --token <token>: GitHub Personal Access Token (PAT). Digunakan apabila repositori target masih bersifat private. Sebagai alternatif, Anda juga bisa menyetel variabel lingkungan GITHUB_TOKEN di terminal Anda.
Example:
alkademi install my-first-lms --token ghp_yourgithubtokenhere

Contributing

We welcome contributions! If you have ideas for new templates, commands, or improvements, feel free to open an issue or submit a pull request on our repository.

License

This project is open-sourced under the MIT License.

Related Packages

nuxthub

Interface with the NuxtHub platform from the command line.

45,094
storybook-nuxt

Storybook init CLI for Nuxt

4,011
@nuxtus/generator

Package responsible for generating a Nuxt page from Directus collection.

1,562 2
nuxt-payload-analyzer

Analyze Nuxt Payload Size

35,636 25
nuxt-llms

Generate llms.txt documentation for your Nuxt application

1,000,918 171

Version History

Version Released License
1.0.0 MIT