Get started

Install Agpiko

The customer only provides what cannot be invented alone: a domain, a Node server, and an admin account.

Open the panel

CLI

The easy path is one command. It downloads the signed package, checks the server, and leaves the site ready. npx create-agpiko ./mi-sitio It asks for domain, email, and password (or use --yes). Then: admin at /admin/login. Updates: Check → Apply. The package is not on the public npm registry yet. Until then, from the origin tree: cd cli && npm run build && node dist/index.js create ./mi-sitio.

Easy path

Agpiko does not live inside WordPress or PHP-only hosting. It is a Node app with its own panel. 1. You have a domain (or one we give you). 2. You have a Linux VPS with Node 22.13+ (or we install it for you). 3. You run the CLI (above). Sign in at /admin/login. 4. Later versions: panel → Updates → Check → Apply.

On your PC

For trying it out. Three things cannot be skipped: Node, an admin email/password, and starting the app. 1. Install Node.js 22.13 or newer. 2. Open the package. In kernel/ copy .env.example to .env.local and set only the admin email and password. 3. Run: npm install npm run db:seed npm run dev Open the URL Next prints, then /admin/login.

On a server

The minimum the customer (or their host) must have ready beforehand: • DNS pointing at the VPS. • A site in the panel (CloudPanel or similar) with TLS. • The site’s Linux user and one free port. After that, one ops script does the rest: unpack, write .env.local, install, build, create the database, and start PM2. The panel proxy must point at that port. If you do it by hand (no script), from kernel/: npm install npm run build npm run db:seed pm2 start ./node_modules/next/dist/bin/next --name agpiko -- start -p 3008 pm2 save Use the same port in PM2 and in the proxy. Channel URL and public key come with installer defaults; do not invent them. Sign in at https://your-domain/admin/login.

After that

Do not upload code by hand again. 1. Panel → Updates. 2. Check. 3. Apply. That replaces kernel/. It keeps site/, data/, and .env.local.

What we ask and why

Domain / DNS — Yes. It is theirs. We cannot point it without access. TLS in the panel — Yes, or the host does it. It does not live inside Agpiko. Server with Node — Yes, or Agpiko-managed hosting. It will not run on PHP alone. Admin email and password — Yes (or we generate it and send it). Channel and public key — No. Fixed in the installer. npm install / build / seed / PM2 — No. The script does them. Edit nginx by hand — No. The panel points the proxy at the port. Pick a port — No, if the installer picks a free one. kernel/ site/ data/ folders — No. They come from the package. Just know site/ is your project. Update by SFTP — Never. Use Check → Apply. Folders (reference): install/ kernel/ app (an update replaces it) site/ your project (untouched) data/ SQLite and keys (not in git)

Next step

With the site installed, create pages in the panel and publish them.

Go home