Coder Social home page Coder Social logo

textpattern / textpattern-plugins-website Goto Github PK

View Code? Open in Web Editor NEW
7.0 10.0 1.0 2.52 MB

Textpattern CMS Plugins website.

Home Page: https://plugins.textpattern.com

License: GNU General Public License v2.0

JavaScript 99.65% CSS 0.35%
website web-design textpattern textpattern-website textpattern-plugin

textpattern-plugins-website's Introduction

Textpattern CMS

Crowdin Known Vulnerabilities GitHub Sponsors

Textpattern Logo

A flexible, elegant, fast and easy-to-use content management system written in PHP. Textpattern is free and open source software.

Textpattern CMS screenshots

System requirements

Textpattern is installed to a web server with PHP and MySQL.

Ensure the server meets or exceeds the system requirements before you continue.

Download Textpattern

The current production release is version 4.8.8. It can be downloaded from the Textpattern website or GitHub in .zip and .tar.gz varieties.

If you want to use the multi-site functionality in Textpattern, get the .tar.gz archive.

textpattern.com GitHub
.zip Download Download
.tar.gz Download Download

Install Textpattern

Please see README.txt for details on installing Textpattern.

Upgrade Textpattern

Please see README.txt for details on upgrading Textpattern.

Help and Support

The Textpattern support forum is home to a friendly and helpful community of Textpattern users and experts. Textpattern also has a social network presence on Mastodon and Twitter.

Development

The development snapshot can be obtained from the Textpattern repository on GitHub.

Anticipated changes to future system requirements

As a development version approaches release, minimum and recommended system requirements are confirmed and the production release system requirements is updated accordingly.

The following table outlines anticipated forthcoming changes to system requirements. It takes into account vendor support, security considerations, overall performance and other factors. Note that minimum and/or recommended versions listed may change multiple times during the development process.

Textpattern development versions

Note that targeted versions listed may change multiple times during the development process.

We are targeting Textpattern 4.9 as the next minor release. Refer to the following table for anticipated changes to system requirements.

Minimum Recommended
PHP 5.6 vendor supported
(8.1, 8.2 or 8.3)
MySQL 5.5 vendor supported LTS
(8.0)
Apache vendor supported
(2.4)
Nginx mainline (1.25) or stable (1.26)

Contributing

Do you want to help with the development of Textpattern? Please refer to the contributing documentation for full details.

GitHub topic tags

If you use GitHub for Textpattern-related development please consider adding some of the following topic keywords to your public project repositories, so we can expand the network of discoverable resources:

Additional development tools

Various components used within Textpattern (such as the bundled themes and language translations) are maintained in standalone repositories. Textpattern has a simple development toolset built on Node.js to pull the distribution files of those repositories into the core as required.

You can install Node.js using the installer or package manager.

Install required dev tools:

npm install

You can then pull the following components from the CLI, like so:

npm run get-default-theme
npm run get-classic-admin-theme
npm run get-hive-admin-theme
npm run get-pophelp
npm run get-textpacks
npm run get-dependencies

To request a specific tag or branch:

npm run get-default-theme 4.8.8
npm run get-classic-admin-theme 4.8.8
npm run get-classic-admin-theme 4.8.x
npm run get-hive-admin-theme 4.8.x
npm run get-textpacks 4.8.x

Release tools:

Usage: npm run txp-gitdist <version> [dest-dir] (dest-dir defaults to a temporary location).

npm run txp-index
npm run txp-checksums
npm run txp-gitdist 1.2.3 ../my-dest-dir

Thank You

Thank you to our GitHub sponsors. Your continued support is greatly appreciated!

We are grateful to DigitalOcean, BrowserStack and 1Password for their kind considerations in supporting Textpattern CMS development by way of web hosting infrastructure (DigitalOcean), cross-browser testing platform (BrowserStack) and secure password management (1Password). Thank you!

This project is supported by:

Legal

Released under the GNU General Public License. See LICENSE.txt for terms and conditions.

Includes contributions licensed under the GNU Lesser General Public License. See LICENSE-LESSER.txt for terms and conditions.

Includes contributions licensed under the New BSD License. See LICENSE-BSD-3.txt for terms and conditions.

Textpattern CMS blogging illustration

textpattern-plugins-website's People

Contributors

bloatware avatar bloke avatar dependabot[bot] avatar greenkeeper[bot] avatar petecooper avatar philwareham avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

mst-textpattern

textpattern-plugins-website's Issues

Beta Release

OK, I'm fairly happy we can move to a beta shortly. The site is actually already up, as you've probably been aware:

https://plugins.textpattern.com/

I think the blockers to beta are:

  • Create accounts for you all in the admin-side (plus anyone else we feel would want to safely have access).
  • Create sitemap.xml TXP template.
  • Hammer out a few more kinks in the curated plugins list format and endpoints. see here
  • Add manifest flag to JSON output template.
  • Add dependencies flag(s) to JSON output template.
  • Add dependencies shortcode (TBC).
  • Ensure cards are created for the plugins that I've already added to the plugins site.
  • Ensure current pages in the site have correct information (e.g. verified versions, I just created a few random configurations just to test the filtering worked well enough).
  • Add more cards, plugin pages, and author pages just so the site isn't too bare at beta launch (more can obviously be added during beta test but I'd like to have around 50 plugins there for beta launch).
  • Create search console instances for Google, Bing, etc.
  • Set up site backups (@petecooper)

Feel free to test the current site and try to break it/spot typos/spot fundamental drawbacks of the system.

I've got to do some proper client work now so I'll be offline this afternoon mostly.

expand searches

Describe the issue
When searching for plugins compatible to a particular txp version, no results are returned after making a selection from the pulldown but text field is empty.

To reproduce
Steps to reproduce the behaviour:

  1. Go to homepage
  2. Click on the txp version pulldown and select one of them (leave search field empty)
  3. Click search

Expected behaviour
A list of version specific plugins

label text on download button

On individual plugin pages the label text on the download buttons is not very clear (PHP download ?). To make matters more confusing some plugins have two buttons (e.g. com_connect 4.6.0). In the latter case, consider emphasising only one type (and give a plain link to the second type).

Output JSON files for auto update process

Stub issue to track the format we will (hopefully) use for Textpattern 4.9 core plugin auto-update system.

Currently, JSON template will aim to give the following data (TBC):

{
  "name": "{prefix_plugin-name}",
  "supersededByCore": {boolean},
  "beta": {
    "version": "{semver}",
    "verifiedMaxTxpCompatibility": "{ver-of-textpattern}",
    "datePublished": "{yyyy}-{mm}-{dd}",
    "endpointUrl": "{url-of-plugin-beta-endpoint}"
  },
  "stable": {
    "version": "{semver}",
    "verifiedMaxTxpCompatibility": "{ver-of-textpattern}",
    "datePublished": "{yyyy}-{mm}-{dd}",
    "endpointUrl": "{url-of-plugin-stable-endpoint}"
  }
}

For example (TBC):

{
  "name": "com_connect",
  "supersededByCore": 0,
  "beta": {
    "version": "4.6.1-beta.3",
    "verifiedMaxTxpCompatibility": "4.9",
    "datePublished": "2020-06-29",
    "endpointUrl": "https://github.com/textpattern/com_connect/archive/4.6.1-beta.3.zip"
  },
  "stable": {
    "version": "4.6.0",
    "verifiedMaxTxpCompatibility": "4.8",
    "datePublished": "2020-01-31",
    "endpointUrl": "https://github.com/textpattern/com_connect/archive/4.6.0.zip"
  }
}

The reason we don't show verifiedTxpCompatibility for beta releases, is that these are only shown when their semver is higher than stable (or no stable exists). I'm open to opinion on this. Also TBC whether we even show beta releases here at all (i.e. should we exempt beta releases from the auto-update system)?

'Featured' marker extends outside bounding box

Describe the issue
Featured plugins have a broken 'Featured' marker. It doesn't display properly.

URL of page containing content issue
https://plugins.textpattern.com/

Current behaviour

Screenshot 2021-08-25 at 18 18 56

Expected behaviour
'Featured' marker should gracefully extend beyond bounding box, as per http://web.archive.org/web/20210603063204/https://plugins.textpattern.com/

Appears to have broken before http://web.archive.org/web/20210811220426/https://plugins.textpattern.com/ was archived.

Action required: Greenkeeper could not be activated 🚨

🚨 You need to enable Continuous Integration on Greenkeeper branches of this repository. 🚨

To enable Greenkeeper, you need to make sure that a commit status is reported on all branches. This is required by Greenkeeper because it uses your CI build statuses to figure out when to notify you about breaking changes.

Since we didn’t receive a CI status on the greenkeeper/initial branch, it’s possible that you don’t have CI set up yet. We recommend using Travis CI, but Greenkeeper will work with every other CI service as well.

If you have already set up a CI for this repository, you might need to check how it’s configured. Make sure it is set to run on all new branches. If you don’t want it to run on absolutely every branch, you can whitelist branches starting with greenkeeper/.

Once you have installed and configured CI on this repository correctly, you’ll need to re-trigger Greenkeeper’s initial pull request. To do this, please click the 'fix repo' button on account.greenkeeper.io.

Sunsetting of textpattern.org

WIP catch-all for the eventual decommissioning of textpattern.org.

  • map .org URLs to plugins site
  • notify active plugin authors about change of URL and process

Plugins without a stable version

Here's an interesting one. ied_plugin_composer hasn't been updated in a while and the last known version it worked with was Txp 4.6. So I omitted the stable node since I wasn't sure if there was any way to specify the version of Txp the stable branch is compatible with.

At the moment it only has a legacy node with 4.6 sub-node. https://github.com/textpattern/textpattern-curated-plugins-list/blob/master/library-of-plugins/ied_plugin_composer.json

This results in the website showing the legacy correctly but displays "ied_plugin_composer [Prerelease]" and no download information when it tries to interpret the missing stable block. Do we need to guard against this for plugins that are legacy only? https://plugins.textpattern.com/plugins/ied_plugin_composer

Idea: Textpattern plugins library repo as a bridge to the Textpattern plugins website

This discussion is being brought over from here and here.

Synopsis so far (mostly based on @philwareham's overview):

Problem

A current problem is that the Textpattern plugins website uses the GitHub v4 API (GraphQL) to populate most of the content on the individual plugin page. However after trying that the following limitations surface:

  1. Obviously the plugin has to be on GitHub in the first place. Some plugin authors don't use it and I guess (although I haven't checked) they may use GitLab or Bitbucket, etc.
  2. Of the plugins that are on GitHub, a fair few don't use GitHubs tagging and release features - meaning the automated tracking of latest versions (by tag) and multiple releases is broken. We can provide workarounds for this (i.e. just link to dev release if tags missing) but it's not elegant or satisfying.
  3. We would be at the mercy of the GitHub API stability and their content-breaking API updates (as I mentioned above). If the API is down or breaks, then the plugin page content disappears until fixed.

Idea

Create a repo (or repurpose https://github.com/textpattern-community/textpattern-plugin-archive) to house some JSON manifests or whatever that serve as ‘library cards’ for each plugin. Make the content of those extremely easy to edit, then read those into an interpreter or even GraphQL parser on the plugins site. To create a new plugin entry you would create a card on the repo, then create a page on the Textpattern plugin site (which you have to do anyway) and point a custom field to the resource.

This repo could be managed by the Textpattern community with a small steering group adding / accepting PRs.

Advantages

  1. We control exactly what content is in the manifest/library cards. Making it easier to edit and update as needed (we can create an issue template to ease users updating the repo).
    We are not at the mercy of GitHub's API (apart from having too link to a resource file for each plugin on a GitHub repo).
  2. We can add endpoints on GitLab, author's own site, or wherever the plugin is downloaded from.
  3. We can add entries in those library cards that list older plugin versions that work on older Textpattern versions (there was no way to do this in a suitable way on just the GitHub API due to limitations above).

‘Library card’ format + contents

We should be quite careful in thinking through what data is in the manifest, so we get this right first time. Of course we can add to manifests in future, but the core entries need to be well thought out. It needs to be:

  • Complete enough to offer visitors to the Textpattern plugin website informed choices
  • Extensible for future use without requiring one to rework old cards (or at least not significantly)
  • Not overloaded so that the library cards are quick and easy to produce and not a barrier/chore.

Thoughts?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.