Website for PyCon

Related tags

CMSpycon
Overview

PyCon 2019 Web Site

Built by the Python Community atop the Django web framework.

Rather than use this as the basis for your conference site directly, you should instead look at https://github.com/pinax/symposion which was designed for reuse.

PyCon 2019 is built on top of Pinax Symposion but may have customizations that will just make things more difficult for you.

Installation instructions are in this README. There's more documentation at https://readthedocs.org/projects/pycon/.

Build status for develop branch:

https://travis-ci.org/PyCon/pycon.svg?branch=develop

Running the PyCon site locally

Before you get started, you'll need a Docker environment, and docker-compose available, see https://www.docker.com/community-edition for the easiest way to get that setup for your platform!

Developers can easily run the PyCon web application inside an isolated environemnt by using Docker. Once you have Docker and Docker Compose installed on your computer, simply check out this project from GitHub and spin up the site:

$ git clone https://github.com/PyCon/pycon.git
$ cd pycon
$ make up

On this first call to up that creates the containers, make will go ahead and automatically perform all of the provisioning steps that the application needs. You can later reset the environment using make reset. Bootstrapping may take a few minutes to complete, since it downloads Django and all of the libraries it needs.

When docker-compose finishes, the PyCon application is running with some sample content!

Finally, you should see the development version of the PyCon web site when you visit http://localhost:8000/ in your browser!

Two logins are created during the automated setup!

To login as a Django superuser, use the email address [email protected] and the password None.

To login as a general user, use the email address [email protected] and the password None.

Running the PyCon web site in production

  • You will want to run the application on an Ubuntu 12.04 or 14.04 host.

  • Create a new virtualenv and activate it:

    $ virtualenv env/pycon
    $ . env/pycon/bin/activate
    
  • Install the requirements for running and testing locally:

    $ pip install --trusted-host dist.pinaxproject.com -r requirements/project.txt
    
  • Copy pycon/settings/local.py-example to pycon/settings/local.py.

  • Edit pycon/settings/local.py according to the comments. Note that you will have to edit it; by default everything there is commented out.

  • If you have ssh access to the staging server, copy the database and media:

    $ fab staging get_db_dump:pycon
    $ fab staging get_media
    

    Change pycon in that first command to the name of your local database.

    If you get Postgres authorization errors when trying the get_db_dump, find another developer who has access already and copy the ~/.pgpass file from their account on that server to your own account; it has the userids and passwords for the databases.

  • Otherwise, ask someone for help. We don't have a good way currently to get a new system running from scratch.

  • Create a user account:

    $ ./manage.py createsuperuser
    
  • Edit pycon/settings/local.py to make sure DEBUG=False.

  • Add an appropriate ALLOWED_HOSTS setting (https://docs.djangoproject.com/en/1.5/ref/settings/#std:setting-ALLOWED_HOSTS)

  • Install lessc (Go to http://lesscss.org and search for "Server-side usage")

  • Pre-compress everything by running:

    python manage.py compress --force
    

    That will write compressed css and js files under site_media

  • Gather the static files:

    python manage.py collectstatic --noinput
    
  • Arrange to serve the site_media directory as /2018/site_media/whatever. E.g. site_media/foo.html would be at /2018/site_media/foo.html.

  • Arrange to serve the wsgi application in symposion/wsgi.py at /, running with the same virtualenv (or equivalent). It will only handle URLs starting with /2018 though, so you don't have to pass it any other requests.

To run tests

Tests won't run from /vagrant inside the vagrant system due to shortcomings of the way Vagrant makes the host system's files available there. It's probably simplest to just do development directly on any Ubuntu 14 system.

python manage.py test

or try running make test or tox. (Yes, we have too many ways to run tests.)

Also, Travis (https://travis-ci.org/PyCon/pycon) automatically runs the tests against pull requests.

More documentation

There's more documentation under docs/.

LICENSE

Owner
PyCon
PyCon
Crypt Wiki - VimWiki with added support for encryption/decryption

Crypt Wiki - VimWiki with added support for encryption/decryption This project is meant to solve an issue I have ran into recently. I wanted to have a

Adrian Costin 6 Dec 18, 2022
Website for PyCon

PyCon 2019 Web Site Built by the Python Community atop the Django web framework. Rather than use this as the basis for your conference site directly,

PyCon 155 Nov 05, 2022
A Django-based CMS with a focus on extensibility and concise code

FeinCMS - An extensible Django-based CMS When was the last time, that a pre-built software package you wanted to use got many things right, but in the

FeinCMS 847 Jan 07, 2023
An encylopedia that runs on Django as part of CS50w's coursework

Django Wiki As part of the CS50w course, this project aims to apply the use of Django together with HTML and CSS to replicate an encyclopedia. Require

Beckham 1 Oct 28, 2021
A Django blog app implemented in Wagtail

Puput Puput is a powerful and simple Django app to manage a blog. It uses the awesome Wagtail CMS as content management system. Puput is the catalan n

APSL 535 Jan 08, 2023
Flask-SQLAlchemy implementation of nested/threaded comment replies.

Threaded comments using Common Table Expressions (CTE) for a MySQL Flask blog or CMS Credits to peterspython Also read more about the implementation h

ONDIEK ELIJAH OCHIENG 5 Nov 12, 2022
CMS framework for Django

Created by Stephen McDonald Overview Mezzanine is a powerful, consistent, and flexible content management platform. Built using the Django framework,

Stephen McDonald 4.6k Dec 29, 2022
🐰 Bunnybook 🐰 A tiny social network (for bunnies), built with FastAPI and React+RxJs.

🐰 Bunnybook 🐰 A tiny social network (for bunnies), built with FastAPI and React+RxJs. Click here for live demo! Included features: 💬 chat 🔴 online

Pietro Bassi 190 Jan 03, 2023
E-Commerce Platform

Shuup Shuup is an Open Source E-Commerce Platform based on Django and Python. https://shuup.com/ Copyright Copyright (c) 2012-2021 by Shoop Commerce L

Shuup 2k Jan 07, 2023
用Hexo的方式管理WordPress(使用Github Actions自动更新文章到WordPress)

方圆小站Github仓库 ---start--- 目录(2021年02月17日更新) 《刺杀小说家》一个勇士屠恶龙救苍生的故事 衡水的中学为高考服务,996.icu为人民企业家服务 轻薄的代价(纪念不足两岁MacBook轻薄本的陨落) PP鸭最佳替代品!《图压》批量压缩图片而不损失画质,支持JPG,

zhaoolee 166 Jan 06, 2023
The easy-to-use and developer-friendly CMS

django CMS Open source enterprise content management system based on the Django framework and backed by the non-profit django CMS Association. Get inv

django CMS Association 9.1k Jan 04, 2023
Django e-commerce website with Advanced Features and SEO Friendly

MyTech® - Your Technology Django e-commerce website with Advanced Features and SEO Friendly Images and Prices are only used for Demo purpose and does

28 Dec 21, 2022
plumi video sharing

December 2017 update We are moving tickets from the Plumi tracker (trac.plumi.org) here, for historical reasons. Plumi video sharing system Plumi is a

Plumi 111 Dec 15, 2022
Django CMS Project for quicksetup with minimal installation process.

Django CMS Project for quicksetup with minimal installation process.

Dipankar Chowdhury 3 Mar 24, 2022
An open source CMS, in python and integrable in Django

Python CMS based on the Django Framework

Titouan Bénard 0 Sep 10, 2021
A full-stack clone of Instagram, allowing the user to interact with posts and other users.

This project is a full-stack clone of Instagram, allowing the user to interact with posts and other users

Alejandro Carrizosa Grant 4 Feb 14, 2022
LibreLingo🐢 🌎 📚 a community-owned language-learning platform

LibreLingo's mission is to create a modern language-learning platform that is owned by the community of its users. All software is licensed under AGPLv3, which guarantees the freedom to run, study, s

Daniel Kantor 1.4k Jan 09, 2023
A curated list of awesome packages, articles, and other cool resources from the Wagtail community.

Awesome Wagtail A curated list of awesome packages, articles, and other cool resources from the Wagtail community. Wagtail is a Python CMS powered by

Springload 1.7k Jan 03, 2023
Oppia a free, online learning platform to make quality education accessible for all.

Oppia is an online learning tool that enables anyone to easily create and share interactive activities (called 'explorations'). These activities simulate a one-on-one conversation with a tutor, makin

Oppia 4.8k Dec 28, 2022
Python scripts to interact with the CakeCMS API.

Python scripts to interact with the CakeCMS API. Installation of the python module Prerequisites The cakecms module has to be installed first. Install

Fabian Thomas 3 Jan 31, 2022