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 🙏

© 2024 – Pkg Stats / Ryan Hefner

caldera-admin

v0.1.0

Published

Caldera Admin v2.

Downloads

6

Readme

Caldera (Forms) Admin

Caldera Admin v2.

Requires the project/admin-refactor branch of Caldera Forms. Which is used by the built in local environment.

Maintainability

Goals

This is a WordPress plugin (for now) that replaces the main Caldera Forms admin screen with a new React app that replaces our old admin page with a new form list, form creation UI, a more powerful and extendable entry viewer, and moves the settings for Caldera Forms Pro, general settings, privacy settings, etc to one single interface.

I suspect this will become a composer package that goes in Caldera Forms and other Caldera plugins.

Components:

This plugin/ whatever makes use of Caldera PHP and JavaScript modules.

  • Caldera Interop - PHP entities for our data types that transform to and from array, JSON, PSR-7 HTTP message. Provides special service container.
  • Caldera Containers - PHP. container and service container.
  • Caldera Query Builder - PHP. SQL queries for Caldera Forms data
  • Caldera Admin Client - React app for managing Caldera (Forms) forms, entry data and settings.
  • Caldera DB - PHP library for config-driven database abstraction (WordPress wpdb only for now) for creating and querying MySQL database tables.
  • Caldera Components - Config-driven React library using Gutenberg components.
  • Caldera State - State management for Redux and @wordpress/data.
  • Caldera API Client - JavaScript API client for Caldera (Forms) data and settings.
  • Caldera Forms Pro API Client - PHP api client for read/write Caldera Forms Pro data.

Responsibilities

This plugin is responsible for:

  • Dependency management
  • Wiring Caldera Interop to WordPress REST API.
  • PHP classes for adding menus and other WordPress UI.
  • Adding Caldera Forms database structure if not present.
  • Replacing old admin screen with fallbacks.
  • Compiling and optimizing assets.

Development

Install

Requires git and Composer.

NOTE: It is not recommended at this time to install this. It does not work yet.

  • git clone [email protected]:calderawp/caldera-admin.git
  • cd caldera-admin
  • composer install
  • yarn

Install Local Development Environment

A local development environment is included, and provided. It is used for integration tests. Requires Composer, Docker and Docker Compose.

  • Install Local Environment And WordPress "Unit" Test Suite
  • composer wp:install
  • Activate plugins and import test forms
  • composer cf:install

You should now have WordPress at http://localhost:8888/

  • Username: admin
  • password: password

Using Already Installed Local Development Environment

  • (re)Start Server: Once server is installed, you can start it again
  • composer wp:start
  • (re)Activate Plugins
  • composer cf:activate

Testing

Install Test Suites

Follow the steps above to create local development environment, then you can use the commands listed in the next section.

Use

Run these commands from the plugin's root directory.

  • Run All php Test, Sniffs and Lints
    • composer tests
  • Run php Unit Tests
    • composer tests:unit
  • Run WordPress Integration Tests
    • composer wp:tests
  • Fix All Code Formatting
    • composer formatting
  • Run JavaScript Unit Test Watcher
    • yarn test
  • Run JavaScript Unit Tests Once
    • yarn test:once
  • Run JavaScript Unit Tests Once and Report Coverage
    • yarn test:coverage

Release To npm

Must be logged in as project maintainer via npm cli

  • yarn release
    • Release a patch update
    • Increments third position of a version. 1.0.1 -> 1.0.2
  • yarn release:minor
    • Release a minor update
    • Increments second position of a version. 1.0.1 -> 1.1.0
  • yarn release:major
    • Release a major update
    • Increments second position of a version. 1.0.1 -> 2.0.0

These commands run the tests and linter, and if they pass, re-compiles source, rebuilds docs, updates the version using npm version, adds a git tag, makes a git commit for the version change and updates the module on npm.