πŸš€ DAY 5 OF LAUNCH WEEK: Introducing Socket Firewall Enterprise.Learn more β†’
Socket
Book a DemoInstallSign in
Socket

create-aether-cms

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

create-aether-cms

Create Aether CMS projects with no build configuration

latest
Source
npmnpm
Version
1.1.0
Version published
Weekly downloads
4
Maintainers
1
Weekly downloads
Β 
Created
Source

Create Aether CMS

Create Aether CMS projects with no build configuration and seamless update capabilities.

Quick Overview

npx create-aether-cms my-cms-site
cd my-cms-site
npm start

Then open http://localhost:8080 to see your site.

When you're ready to deploy to production, create a static build with npm run build.

Creating a Project

Basic Installation

npx create-aether-cms my-cms-site

Version-Specific Installation

Install a specific version, tag, or commit:

# Install specific version
npx create-aether-cms my-blog --version v1.0.0

# Install specific git tag
npx create-aether-cms my-blog --tag stable

# Install specific commit
npx create-aether-cms my-blog --hash abc1234

# Show all available options
npx create-aether-cms --help

Alternative Package Managers

# Using npm init
npm init aether-cms my-cms-site

# Using yarn create
yarn create aether-cms my-cms-site

This will create a directory called my-cms-site inside the current folder.
Inside that directory, it will generate the initial project structure and install the dependencies.

my-cms-site/
β”œβ”€β”€ README.md
β”œβ”€β”€ node_modules/
β”œβ”€β”€ package.json
β”œβ”€β”€ package-lock.json
β”œβ”€β”€ .gitignore
β”œβ”€β”€ .gitattributes           # ← NEW: Conflict-free updates
β”œβ”€β”€ .env
β”œβ”€β”€ index.js
β”œβ”€β”€ core/
β”‚   β”œβ”€β”€ admin/
β”‚   β”œβ”€β”€ api/
β”‚   β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ routes/
β”‚   └── utils/
β”œβ”€β”€ assets/
β”‚   β”œβ”€β”€ css/
β”‚   └── js/                  # ← CONTAINS: New Update utilities
└── content/
    β”œβ”€β”€ data/
    β”‚   └── settings.json    # ← Enhanced with update preferences
    β”œβ”€β”€ themes/
    └── uploads/

No configuration or complicated folder structures. Just the files you need to build your site.

Requirements

  • Node.js 18.0.0 or later
  • npm 8.6.0 or later
  • Git (for version targeting and updates)
  • macOS, Windows, and Linux are supported

Advantages Over Traditional npm Installation

Using create-aether-cms offers several key benefits:

  • Direct Code Access: All CMS code is directly in your project directory (not in node_modules)
  • Easier Customization: Modify any file without ejecting or complex overrides
  • Seamless Updates: Automated conflict-free updates with your customizations preserved
  • Version Control: Install any specific version, tag, or commit
  • Complete Application: Creates a fully functional project in one command
  • Modern Defaults: Follows modern JavaScript practices with ESM support

What Happens During Installation

When you run create-aether-cms, it:

  • Clones the Repository: Downloads the complete Aether CMS codebase
  • Version Targeting: Switches to your specified version (if provided)
  • Git Configuration: Sets up remotes and conflict-free update system:
    • upstream points to the original Aether CMS repo (for updates)
    • origin can be set to your own repository (optional)
  • Project Customization: Updates package.json with your project details
  • Update System: Creates helper scripts and configuration for seamless updates
  • Dependency Installation: Installs all required npm packages
  • Initialization Commit: Creates a commit marking your project start

Update System

Your project includes a powerful update system that preserves your customizations while applying upstream improvements.

Check for Updates

# Using npm script (recommended)
npm run check-updates

# Using CLI directly
node assets/js/check-updates.js

# Using git directly
git fetch upstream
git log HEAD..upstream/main --oneline  # See what's new

Apply Updates

# Automated update (preserves your settings)
npm run update-aether

# Manual git approach
git merge upstream/main

# Or apply specific updates
git cherry-pick <commit-hash>

Resolve Conflicts

If you've customized core files, you may encounter merge conflicts:

# After running git merge upstream/main
# Edit files to resolve conflicts, then:
git add .
git commit -m "Resolve merge conflicts"

Note: The upstream remote is automatically configured during project creation, so you don't need to add it manually.

If You Need to Re-add the Upstream Remote

If for some reason the upstream remote is missing, you can add it:

# Check existing remotes
git remote -v

# Add upstream if it doesn't exist
git remote add upstream https://github.com/LebCit/aether-cms.git

What's Protected During Updates

The update system automatically preserves your customizations:

βœ… Always Protected:

  • Your project name and version
  • Environment variables (.env)
  • Content and uploads (/content/)
  • Custom settings (settings.json)
  • Git ignore rules (.gitignore)

βœ… Intelligently Merged:

  • New features and bug fixes
  • Security updates
  • Performance improvements
  • New dependencies

⚠️ May Require Attention:

  • Core files you've modified (will show merge conflicts)
  • Changes to the default theme

Version Management

Available Options

OptionDescriptionExample
--versionInstall specific version tag--version v1.2.0
--tagInstall specific git tag--tag stable
--hashInstall specific commit--hash abc1234

Installation Metadata

Each installation stores metadata for better update management:

{
    "aetherCMS": {
        "templateName": "aether-cms",
        "installedVersion": "v1.0.0",
        "installedAt": "2025-01-15T10:30:00.000Z",
        "installOptions": {
            "version": "v1.0.0",
            "tag": null,
            "hash": null
        }
    }
}

Setting Up Your Own Repository

During installation, you can optionally connect to your own Git repository:

# During installation, when prompted:
# "Connect to your own Git repository? (y/n): y"
# "Repository URL: https://github.com/YOUR_USERNAME/your-project.git"

# Or add it later:
git remote add origin https://github.com/YOUR_USERNAME/your-project.git
git push -u origin main

Advanced Git Configuration

The installer automatically configures Git for optimal update handling:

  • Conflict Resolution: Uses .gitattributes to prevent conflicts on user files
  • Remote Management: Properly configured upstream for updates
  • Branch Strategy: Creates a clean main branch for your project

CLI Reference

# Basic usage
npx create-aether-cms <project-name> [options]

# Options
--version, -v <version>   Install specific version (e.g., v1.2.0)
--tag, -t <tag>          Install specific git tag (e.g., stable)
--hash, --commit <hash>  Install specific commit hash
--help, -h               Show help message

# Examples
npx create-aether-cms my-blog
npx create-aether-cms my-blog --version v1.0.0
npx create-aether-cms my-blog --tag stable
npx create-aether-cms my-blog --hash abc1234

Troubleshooting

Update Issues

If updates fail, the system automatically creates a backup:

# Check available branches
git branch -a

# Restore from backup if needed
git checkout backup-[timestamp]
git checkout main
git reset --hard backup-[timestamp]

Manual Update Recovery

# Reset to clean state
git fetch upstream
git reset --hard upstream/main

# Restore your settings
git checkout HEAD~1 -- .env package.json content/data/settings.json

Missing Upstream Remote

# Re-add upstream remote
git remote add upstream https://github.com/LebCit/aether-cms.git
git fetch upstream

Alternative: Fork-Based Approach

For maximum control, you can also fork the repository:

  • Fork https://github.com/LebCit/aether-cms on GitHub
  • Use create-aether-cms with your fork:
    git clone https://github.com/YOUR_USERNAME/aether-cms.git my-site
    cd my-site
    git remote add upstream https://github.com/LebCit/aether-cms.git
    

Learn More

License

Create Aether CMS is open source software licensed under the GNU General Public License version 3.0 or later (GPL-3.0-or-later).
See the LICENSE file for full license details.

Keywords

aether

FAQs

Package last updated on 17 Jun 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts