Package: django-admin-timeline
A Facebook-like timeline app for Django admin. It’s very similar to built-in
feature Daily progress, but has nicer templates and infinite scroll. Actions
are broken up by day, then by action. It’s possible to filter actions by
user (multiple select) and content type (multiple select).PrerequisitesPresentStarting fromdjango-admin-timeline1.8:Django 2.2, 3.0 and 3.1Python 3.6, 3.7 and 3.8PastIn past, as of version 1.7.x,django-admin-timelinestill worked on:Django 1.11, 2.0Python 2.7, 3.5InstallationInstall in your virtual environmentLatest stable version from PyPI:pipinstalldjango-admin-timelineLatest stable version from BitBucket:pipinstallhttps://bitbucket.org/barseghyanartur/django-admin-timeline/get/stable.tar.gzLatest stable version from GitHub:pipinstallhttps://github.com/barseghyanartur/django-admin-timeline/archive/stable.tar.gzAddadmin_timelineto yourINSTALLED_APPSin the
globalsettings.py.INSTALLED_APPS=(# ...'admin_timeline',# ...)Collect the static files by running (see the Troubleshooting section in
case of problems):./manage.pycollectstaticOverride app settings in your globalsettingsmodule (see theapps.admin_timeline.defaultsfor the list of settings). As for now,
most important of those isNUMBER_OF_ENTRIES_PER_PAGE- number of
entries displayed per page (for both non-AJAX and AJAX requests).Add the following lines to the globalurlsmodule:# Admin timeline URLs. Should be placed BEFORE the Django admin URLs.url(r'^admin/timeline/',include('admin_timeline.urls')),url(r'^admin/',include(admin.site.urls)),DemoLive demoSee thelive demo appon Heroku.Credentials:username: adminpassword: testRun demo locallyIn order to be able to quickly evaluate thedjango-admin-timeline, a demo
app (with a quick installer) has been created (works on Ubuntu/Debian, may
work on other Linux systems as well, although not guaranteed). Follow the
instructions below for having the demo running within a minute.Grab and run the latestdjango_admin_timeline_example_app_installer.sh:wget-O-https://raw.github.com/barseghyanartur/django-admin-timeline/stable/examples/django_admin_timeline_example_app_installer.sh|bashOpen your browser and test the app.URL:http://127.0.0.1:8001/admin/timeline/Admin username: adminAdmin password: testIf quick installer doesn’t work for you, see the manual steps on running theexample project.TroubleshootingIf somehow static files are not collected properly (missingadmin_timeline.jsandadmin_timeline.cssfiles), install the latest
stable version from source.pipinstallhttps://github.com/barseghyanartur/django-admin-timeline/archive/stable.tar.gzUsageAfter following all installation steps, you should  be able to access thedjango-admin-timelineby:http://127.0.0.1:8000/admin/timeline/An example application is available. See theexample directory.Configuration and tweaksIf you have way to many log entries and fetching all content types and users
isn’t an option, set theADMIN_TIMELINE_SIMPLE_FILTER_FORMtoTruein your settings. It will then change your multiple choice widgets into
plain char fields (comma separated ids are allowed).TestingProject is covered by test (functional- and browser-tests).
To test with all supported Python/Django versions type:toxTo test against specific environment, type:tox-epy36-django111To test just your working environment type:./runtests.pyIt’s assumed that you have all the requirements installed. If not, first
install the test requirements:pipinstall-rexamples/requirements/testing.txtBrowser testsFor browser tests you may choose between Firefox, headless Firefox and
PhantomJS. PhantomJS is faster, headless Firefox is fast as well, but
normal Firefox tests tell you more (as you see what exactly happens on the
screen). Both cases require some effort and both have disadvantages regarding
the installation (although once you have them installed they work perfect).Latest versions of Firefox are often not supported by Selenium. Current
version of the Selenium for Python (2.53.6) works fine with Firefox 47.
Thus, instead of using system Firefox you could better use a custom one.For PhantomJS you need to have NodeJS installed.Set up Firefox 47Download Firefox 47 fromthislocation and unzip it into/usr/lib/firefox47/Specify the full path to your Firefox inFIREFOX_BIN_PATHsetting. Example:FIREFOX_BIN_PATH='/usr/lib/firefox47/firefox'If you set to use system Firefox, remove or comment-out theFIREFOX_BIN_PATHsetting.After that your Selenium tests would work.Set up headless FirefoxInstallxvfbpackage which is used to start Firefox in headless mode.sudoapt-getinstallxvfbRun the tests using headless Firefox../scripts/runtests.shOr run tox tests using headless Firefox../scripts/tox.shSetup PhantomJSYou could also run tests in headless mode (faster). For that you will need
PhantomJS.Install PhantomJS and dependencies.curl-sLhttps://deb.nodesource.com/setup_6.x-onodesource_setup.shsudobashnodesource_setup.shsudoapt-getinstallnodejssudoapt-getinstallbuild-essentiallibssl-devsudonpm-ginstallphantomjs-prebuiltSpecify thePHANTOM_JS_EXECUTABLE_PATHsetting. Example:PHANTOM_JS_EXECUTABLE_PATH=""If you want to use Firefox for testing, remove or comment-out thePHANTOM_JS_EXECUTABLE_PATHsetting.LicenseGPL-2.0-only OR LGPL-2.1-or-laterSupportFor any issues contact me at the e-mail given in theAuthorsection.AuthorArtur Barseghyan <artur.barseghyan@gmail.com>Screenshots