Skip to main content

PyLucid CMS

Project description

about PyLucid

PyLucid is an Open Source web content management system written in Python using Django-CMS.

It’s more a alternative for djangocms-installer

The goal is to simplify the Django-CMS setup.

PyLucid delivers ready-to-use compiled Twitter Bootstrap v4 (Licensed under MIT) with some simple templates directly.

PyLucid is licensed under GNU General Public License v3 or later (GPLv3+)

Try, fork and contribute! ;)

Build Status on travis-ci.org

travis-ci.org/jedie/PyLucid

Coverage Status on coveralls.io

coveralls.io/r/jedie/PyLucid

Requirements Status on requires.io

requires.io/github/jedie/PyLucid/requirements/

install

1. bootstrap PyLucid virtualenv

# download bootstrap file:
/home/FooBar$ wget https://github.com/jedie/PyLucid/raw/master/pylucid/pylucid_boot.py

# Create virtualenv with all needed packages:
/home/FooBar$ python3 pylucid_boot.py boot ~/PyLucid-env

2. use the created PyLucid virtualenv

# Go into created virtualenv:
/home/FooBar$ cd ~/PyLucid-env

# activate the env:
~/PyLucid-env $ source bin/activate

# Start the interactive admin shell:
(PyLucid-env) ~/PyLucid-env $ pylucid_admin

pylucid_admin.py shell v3.0.0
Type help or ? to list commands.

pylucid_admin.py>

3. create a page instance

A page instance is a django project with own settings, for easy start a own web page. Create a page instance in the interactive admin shell:

pylucid_admin.py> create_page_instance ~/page_instance you_project_name
...
pylucid_admin.py> quit

# Go into created page instance
(PyLucid_env) ~/PyLucid_env $ cd ~/page_instance/

# Create cache tables
(PyLucid_env) ~/page_instance $ ./manage.py createcachetable

# init database
(PyLucid_env) ~/page_instance $ ./manage.py migrate

# Create a super user
(PyLucid_env) ~/page_instance $ ./manage.py createsuperuser

# Copies all static files together:
(PyLucid_env) ~/page_instance $ ./manage.py collectstatic

# run developer server:
(PyLucid_env) ~/page_instance $ ./manage.py runserver

update

A general overview:

  • update environment

  • migrate database

  • collect static files

  • Update you own templates/styles (not always needed)

Looks like this:

# Go into created virtualenv:
/home/FooBar$ cd ~/PyLucid-env

# activate the env:
~/PyLucid-env $ source bin/activate

# Start the interactive admin shell and update environment:
(PyLucid-env) ~/PyLucid-env $ pylucid_admin

pylucid_admin.py shell v3.0.0
Type help or ? to list commands.

pylucid_admin.py> update_env
...
pylucid_admin.py> quit

# Go into created page instance
(PyLucid_env) ~/PyLucid_env $ cd ~/page_instance/

# init database
(PyLucid_env) ~/page_instance $ ./manage.py migrate

# Copies all static files together:
(PyLucid_env) ~/page_instance $ ./manage.py collectstatic

Note: Check ‘Backward-incompatible changes’ below!

further information

run test project

You can run a test project with the django developer server:

(PyLucid-env) ~/PyLucid-env $ pylucid_admin run_test_project_dev_server

bootstrap manually

Note: You can install PyLucid manually via PyPi package:

  • create virtualenv

  • install pylucid via pip from PyPi

  • run pylucid_admin update_env

pylucid_boot.py - interactive shell

pylucid_boot.py is a interactive shell with command completion. You can just start it and do this:

/home/FooBar$ python3 pylucid_boot.py

pylucid_boot.py shell v0.2.0
Type help or ? to list commands.

pylucid_boot.py> ?

Hint: All commands can be called directly from commandline.
e.g.: $ ./pylucid_boot.py help

Use <tab> to command completion.

Documented commands (type help <topic>):
========================================
boot  boot_developer  help  quit

pylucid_admin.py - interactive shell

pylucid_admin.py is a interactive shell with command completion, e.g.:

(PyLucid_env) ~/PyLucid_env $ pylucid_admin
Activated virtualenv detected: '/home/foobar/PyLucid-env' (/home/foobar/PyLucid-env/bin/python3)

pylucid_admin.py shell v0.2.0
Type help or ? to list commands.

pylucid_admin.py> ?

Hint: All commands can be called directly from commandline.
e.g.: $ ./pylucid_admin.py help

Use <tab> to command completion.

Documented commands (type help <topic>):
========================================
change_editable_address  pip_freeze  run_test_project_dev_server
create_page_instance     pytest      update_env
help                     quit        upgrade_requirements

External applications configuration

Dependency applications may need configuration to work properly.

Please, refer to each application documentation on details.

Backward-incompatible changes

On every update: Run the steps from section ‘update’: see above.

v3.1 to v3.2

update your page instance urls.py e.g.:

- url(r'^admin/', include(admin.site.urls)),
+ url(r'^admin/', admin.site.urls),

v3.0 to v3.1

Twitter bootstrap updated from v3 to v4: update you own templates/styles.

v2.1 to v3.0

Create a new, fresh PyLucid environment and a new page instance. See “install” section above. Transfer settings e.g.: Database connection information.

Just run “migrations” and “collectstatic” and update you own templates/styles.

Older changes are here: https://www.pylucid.org/de/blog/tag/backward-incompatible/

Compatible Matrix

PyLucid

Django-CMS

Django

Python

v3.2

V3.7

V2.2 LTS

3.6, 3.7, 3.8

v3.0

V3.4 LTS

V1.11 LTS

3.5, 3.6

v2.1

v3.3

v1.8 LTS

3.4, 3.5

v2.0

v3.2

v1.8 LTS

3.4, 3.5

<=v1.6

v1.6

2.6, 2.7

Release History

(Not all old releases are listed.)

For older PyLucid history, look at:

donation

Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyLucid-3.2.0.tar.gz (433.3 kB view hashes)

Uploaded Source

Built Distributions

PyLucid-3.2.0-py3.6.egg (391.4 kB view hashes)

Uploaded Source

PyLucid-3.2.0-py2.py3-none-any.whl (396.6 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page