pages-cms

A user-friendly CMS for GitHub projects

OTHER License

Stars
1.4K
Committers
1

Bot releases are hidden (Show)

pages-cms - 0.4.2 Latest Release

Published by hunvreus 6 months ago

New features

  • Added support for exclude property on collections. This allows to exclude specific files in a collection from being listed.

Improvements

  • Added validation for icon property in content entries.
pages-cms - Hotfix 0.4.1

Published by hunvreus 7 months ago

Bug fixes

  • Handle images with special characters (e.g. spaces) properly now when switching between rich-text and code editors for markdown.
  • Fixed live updates of configuration for repo names with case.
pages-cms - 0.4.0

Published by hunvreus 7 months ago

CleanShot 2024-03-28 at 13 42 20@2x

0.4.0 is here with a completely refactored system for fields. The new approach is a lot more scalable and allows you to define your own custom fields if you decide to do so. I hope to add a few new fields in 0.4.x, including key-value, files and references. More on that soon.

More info is available on the website: https://pagescms.org/docs/custom-fields/#sort-function

Do let me know if you ned up writing your own fields or even create a PR if you think this should be part of the built-in fields.

Changes

  • Refactored all the built-in fields.
  • Updated Editor, Field and Collection components to handle the new fields system.
  • Documented custom fields.
pages-cms - Hotfix 0.3.6

Published by hunvreus 7 months ago

Bug fixes

  • Fixed an infinite loop on image lists introduced by the change made to address #41.
pages-cms - Hotfix 0.3.5

Published by hunvreus 7 months ago

Bug fixes

  • Fixed broken custom error message for field pattern.
  • Adjusted tabs for repo menu on mobile.
pages-cms - 0.3.4

Published by hunvreus 7 months ago

This release mostly bring better branch management.

There will be one more patch for 0.3.x to add the ability of editing the filename while creating/editing a file (rather than using the rename feature). After that, I'll focus on 0.4.0 with improvements to the field components, helping with custom fields and adding a few more default fields (e.g. files, key-value).

New features

Menu Modal
CleanShot 2024-03-18 at 22 19 07@2x CleanShot 2024-03-18 at 22 21 12@2x
  • You now always have the default branch and the current branch (if different) listed at the top, followed by other branches for a total of up to 5 branches.
  • You can see all branches by clicking on "Manage branches".
  • From the branch modal, you can search for branches and create new branches.

Improvements

  • Made lists more compact.
  • Reworked the main repo and branch navigation.
pages-cms - 0.3.3

Published by hunvreus 7 months ago

Just back from Taiwan, I finally had the time to put a new release together. Unless I have patches/hotfixes to release for this version, I'll be working on 0.4.0 to bring some much needed changes to the fields. Not much left after that to get to 1.0.0.

New features

CleanShot 2024-03-16 at 17 01 42@2x

  • Create a repo from a template: you can now create a new repository using one of the templates available, including blog templates for Astro, Next.js, Eleventy and Jekyll. I'll be adding Hugo and Nuxt shortly.

Improvements

  • Updated the rich-text editor to retain HTML elements in markdown when they include a style or class attribute. It also now retain <img> elements with a width or height attribute.
  • Started to move logic around for view and sorting of fields in collections, in preparation of custom fields release (0.4.0).

Bug fixes

  • Fixed images not updating in lists of objects (#41)
  • Fixed numbers being saved as strings (#28)
  • Various minor CSS/layout fixes.
pages-cms - Hotfix 0.3.2

Published by hunvreus 8 months ago

Rework the collection view logic to properly escape HTML and prepare for modular custom field view logic.

pages-cms - Hotfix 0.3.1

Published by hunvreus 8 months ago

Addressing bugs when dealing with images due to the fact that on Github, owner and repo are case insensitive (e.g. pages-cms/pages-cms is the same as PAGES-CMS/PAGES-CMS).

pages-cms - 0.3.0

Published by hunvreus 8 months ago

This is a big one; this should address all major bugs and improve significantly the robustness of Pages CMS when dealing with incorrect or incomplete settings. I expect to release a few more hotfix releases but will likely then mostly work towards 1.0.0.

In the next couple of days I will also deploy dev.app.pagescms.org with the latest version from the development branch. I'll use it to test releases before deploying to production (it's a tad stressful right now as I worry I will impact users).

If you're interested in helping test future releases before I roll them out, let me know: [email protected].

New features

  • Error-tolerant user interface. You can now have a pretty broken .pages.yml file and still use the CMS.
  • Support dates from filenames. For example 2024-02-20-my-post.md will now set the entry's date to February 20, 2024 without the need for a date field in the content.
  • Support for content entries without fields. You do not have to specify fields now, even for collections (it will list file names).
  • Full support for YAML, JSON and TOML files. You can now manage both single files and collections of files, either using the code or field editor.
  • New configuration mechanism with versioned caching.

Improvements

  • Improve path handling for media (input to output swaps). Do let me know immediately if you observe any weird behavior with media: [email protected].
  • Improved image modal for image field and rich-text field.
  • Completely revamped validation for settings. This includes completely reworked error messages in the editor to make them a lot more readable (e.g. no error on the whole object when only a single property fail).
  • Improved redirection rules for incomplete/invalid routes (e.g. incorrect media settings). This will need to be moved entirely in the router in 0.4.0 or 1.0.0.
  • Various tiny performance improvements (especially with configuration). I will focus more on this for the 1.0.0 release.

Bug fixes

Lots of bug fixes through the app:

  • Fixed the date field by reverting to moment.js (due to a bug from day.js).
  • Errors on incomplete/incorrect settings.
  • Error converting image paths (input <> output) especially for edge cases (e.g. media.output: "").
  • Lots of style fixes (e.g. mobile collection view).
  • ...
pages-cms - Hotfix 0.2.7

Published by hunvreus 8 months ago

Fixing the user dropdown for short usernames or missing profile names.

pages-cms - Hotfix 0.2.6

Published by hunvreus 8 months ago

Addressing errors when media is not defined and a collection/file uses an image field.

pages-cms - Hotfix 0.2.5

Published by hunvreus 8 months ago

Fix some additional edge cases with empty JSON/YAML/TOML files and empty frontmatters.

pages-cms - Hotfix 0.2.4

Published by hunvreus 8 months ago

  • Fixing a bug on collection view when media is not defined.
  • Saving frontmatter as empty string between delimiters when the frontmatter object is empty.
pages-cms - Hotfix 0.2.3

Published by hunvreus 8 months ago

Preventing corrupted image paths to trip on githubImg service.

pages-cms - Hotfix 0.2.2

Published by hunvreus 8 months ago

  • Fix error when frontmatter has null values.
  • Prevent error when view fields are invalid in collections.
pages-cms - Hotfix 0.2.1

Published by hunvreus 8 months ago

Fixed a bug with the rich-text field that would crash when media wasn't defined. Remove image insert feature when neither media nor options.input and options.output on the field are defined.

pages-cms - 0.2.0

Published by hunvreus 8 months ago

This release includes a lot of bug fixes, improvements and a few key features as I'm still working my way up to a 1.0.0.

New Features

  • Configuration linter: when editing settings, you now have real-time validation of your .page.yml file with warnings and errors to help you write something that doesn't blow up your setup.
  • Login with GitHub Fine-Grained PATs (Personal Access Tokens): an option I thought would be important to all of you nerds. You can now use a fine-grained personal access token to log in, allowing you to restrict access to specific repositories. I still need to iron this feature out, but it mostly work.
  • Support for TOML, JSON frontmatter and TOML frontmatter: you can now specify any frontmatter you like (YAML, JSON and TOML) and create TOML files. This comes with configurable delimiters as well: go nuts.
  • Support for JSON, YAML and JSON array files: especially useful for things like data or configuration files. This allows you to manage your _config.yml for Jekyll, an array of authors objects in a _data/authors.json file for 11ty or Gatsby (for example if you use something like gatsby-transformer-json).

Improvements

Lots of improvements, but these stand out:

  • Improved upload: in particular for multiple files and drag & drop. I've also added logic for renaming that should avoid any collision when you upload files with the same name.
  • Reworked image logic: I've upgraded the way I'm handling images, especially for private GitHub repository. Much better results; I have yet to see a bug.
  • Caching: I've added a bit of caching in a couple places (including the configuration files).
  • Change of libraries: Moment.js to Day.js, js-yaml to yaml (in particular to get parsing errors and warnings), etc.
  • Improved collection view: in particular, you can now display images in the collection view.

Bug fixes

Too many to list. I went through the entire codebase and tracked down most of the obvious bugs and edge cases. I'm sure I'll still find a few here and there.

What's next?

I'm focusing on stability, performance, bug fixing, documentation and a few minor features (e.g. regular file upload field, proper table support in the rich-text editor). I expect to be able to release a 1.0.0-beta in two weeks' time.

Now that I'm over the bulk of the foundation for Pages CMS, I'm switching to feature branches and will stick to small commits.

Thanks for those of you who try this release.

pages-cms - 0.1.0

Published by hunvreus 8 months ago

This is the first official release of Pages CMS, an Open Source CMS built for static websites (Jekyll, Next.js, VuePress, Hugo, etc). It allows you to edit your website's content directly on GitHub via a user-friendly interface.

It is a continuation of a previous project (Jekyll+) with more features and broader use cases.

Still rough around the edges but fully functional with all important features:

  • Configurable editor for collection of files or single files (supports YAML frontmatter, JSON, YAML, CSV, code and raw).
  • Configurable collection views (fields, search, sorting, ...).
  • Configurable fields; string, text, code, rich-text, image, ...
  • Media manager, including drag-and-drop uploads.
  • One file setup (.pages.cms).
  • ...

To get started, go check the documentation at pagescms.org/docs or have a look at the README file.

You can either use the online version at app.pagescms.org or deploy your own version.

The README file includes a list of TODOs, but for 1.0.0 I am focusing on adding schema validation for .pages.yml, the configuration wizard and project boilerplates for Next.js, Hugo, 11ty and Jekyll.

To report bugs or suggest improvements, go to the issue queue: github.com/pages-cms/pages-cms/issues