Skip to content
PyLucid is ready to use Django-CMS setup
JavaScript Python HTML CSS Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
pylucid
pylucid_installer
pylucid_page_instance
pylucid_todo
.coveragerc
.editorconfig
.gitignore
.travis.yml
AUTHORS
LICENSE
MANIFEST.in
README.creole
requirements.txt
run_test_project_dev_server.sh
setup.cfg
setup.py

README.creole

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.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.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

links

Homepage http://www.pylucid.org
Sourcecode @ GitHub github.com/jedie/PyLucid
Python Package Index pypi.org/project/PyLucid/
IRC #pylucid on freenode.net
You can’t perform that action at this time.