Giter Site home page Giter Site logo

getpublii / publii Goto Github PK

View Code? Open in Web Editor NEW
6.0K 82.0 398.0 27.57 MB

The most intuitive Static Site CMS designed for SEO-optimized and privacy-focused websites.

Home Page: https://getpublii.com

License: GNU General Public License v3.0

JavaScript 10.54% CSS 0.54% Vue 11.54% XSLT 0.03% Python 0.04% NSIS 0.01% Handlebars 0.57% SCSS 0.95% HTML 75.79%
electron static-site-generator static-site cms vue vuejs vuejs2 handlebars handlebars-js static-website

publii's Introduction

Publii - Static CMS for privacy-focused, SEO-optimized websites.

GPLv3 license Maintenance OpenCollective Open Source Love svg1

Publii is a desktop-based CMS for Windows, Mac and Linux that makes creating static websites fast and hassle-free, even for beginners.

Current version: 0.45.2 (build 16609)

Why Publii?

Unlike static-site generators that are often unwieldy and difficult to use, Publii provides an easy-to-understand UI much like server-based CMSs such as WordPress or Joomla!, where users can create posts and other site content, and style their site using a variety of built-in themes and options. Users can enjoy the benefits of a super-fast and secure static website, with all the convenience that a CMS provides.

What makes Publii even more unique is that the app runs locally on your desktop rather than on the site's server. Available for Windows, Mac, Linux once the app has been installed you can create a site in minutes, even without internet access; since Publii is a desktop app you can create, update and modify your site offline, then upload the site changes to your server at the click of a button. Publii supports multiple upload options, including standard HTTP/HTTPS servers, Netlify, Amazon S3, GitHub Pages and Google Cloud or SFTP.

Publii Open Source Static CMS

Download

Publii is available for Mac, Windows, and Linux and can be downloaded from our website:

Download Publii (.exe, .dmg, .deb, .rpm, .AppImage)

Developing

If you want to build newest version of Publii or contribute to the Publii code, please read about app build process.

Getting Started

You can learn more about getting started in our User documentation or Developer documentation. If you have any questions or suggestions, or just need some help with using Publii, you can visit our Community Hub or follow us on Twitter

Learn More

Contributors

This project exists thanks to all the people who contribute.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

License

Copyright (c) 2022 TidyCustoms. General Public License v3.0, read LICENSE for details.

publii's People

Contributors

bobmitro avatar dependabot[bot] avatar dziudek avatar fabiomai avatar getpublii avatar irbiis avatar lmbatten avatar lpikora avatar monkeywithacupcake avatar mtrimolet avatar oygen87 avatar paulocoghi avatar pysiulla avatar sc0ttes avatar tejas456sawant avatar thibault avatar trocster avatar wishesofhue avatar wuniversales avatar yoavrheims avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

publii's Issues

Support for custom controls under theme settings

Needs bigger research:

  • if it is possible to load custom component in the fly (potential solution: https://github.com/alexjoverm/v-runtime-template ),
  • custom component should load option value, parse it and then display its state,
  • before theme settings save, the component should return the new state,
  • how we can store custom component in the theme JSON file?
  • how to store custom component value in the theme settings?
  • check if it is possible to use single component files (with CSS / JS)

advanced.config.json file for power users

It will be a file placed in the app config directory, where advanced users can specify additional options i.e. order used in the posts list used for links popup (ref. https://publii.ticksy.com/ticket/1412503)

Thanks to this we can save simple App UI and power users will be able to get additional functions.

We can also consider simple editor for these settings under tools (like browsers have their flags internal pages).

Options should be stored as long, unique names e.g. editor.link_popup.posts_dropdown.ordering

Other useful options:

jsonld.output_data.use_modification_date_as_publish_date - for replacing publication date with modification date value.
server_configuration.global_ssh_key - for use unique keys on shared websites: https://publii.ticksy.com/ticket/1673090

{{hasCustomExcerpt}} flag

This flag will allow theme developers to detect when user uses custom excerpt content.

In many cases this kind of excerpt should be wrapped into <div></div> instead of <p></p>.

Apply the custom pagination phrase on the author's page

Changing the pagination phrase to your own, actually affects only the index and tags pages, it should also cover the author's page.

You should remember that this change affects:

  • canonical link
  • rel attribute
  • link to the AMP page

This change should be applied also on the AMP page.

Change S3 ACL for files.publii.json to "authenticated-read"

I noticed that the code that uploads the files.publii.json file to S3 uses the public-read ACL. Since this file is only used by Publii to determine what files it needs to update when deploying, and Publii should be authenticated with AWS, could the canned ACL be changed to authenticated-read? According to the canned ACL documentation, this should allow Publii to still access the file but prevent the file from being publicly accessible.

Allow multiple menu positions for one menu

ToDO:

  • multiple select for menu position
  • change method of saving menus (use semicolon as separator)
  • support for the new menu structure in the renderer
  • helper used for the menu display should have an option which allows developers to display only first level of the menu

GDPR - let users delete the Required Group

In some cases, the user may need to use GDPR cookie popup with no checkboxes (e.g., he does not use cookies, but due to an obligation to provide information he has to inform his visitors about this fact).

UI for post/tag/author ordering on lists

Over the list we should add the following information Ordered by: title (descending) Reset, where title (descending) is a select field and Reset restores the ordering to default state.

  • options to set default ordering of posts/tags/authors under app settings.

Use ASAR in application builds

Needs bigger research.

It will allow us to optimize the installation process as it creates one big file from all small files included in the node_modules package.

Option to not render in menu links to empty tags

ref. https://publii.ticksy.com/ticket/1545900

Note: implementation of this feature will need a bigger changes in the menu renderer. I do not think that current use cases for this feature as worth of it.

I prepared multiple tags which will be used in the future. I also added them already to my menu structure. In the Publii menu editor such an entry is rendered stroke through and red with a tooltip saying "Linked item is not rendered (empty tag/author page), not exists or is trashed". This is all good. 

Now it would be fantastic if it actually wouldn't render that menu item at all if such a tag is empty. Use case: I prepare everything for my non-tech-savvy parents so they wouldn't have to care about the menu.

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.