SlideShare uma empresa Scribd logo
Django para portais de alta visibilidade.
http://github.com/avelino
@avelino0 - /in/avelino0
http://github.com/rochacbruno
@rochacbruno - /in/rochacbruno
OPen Publishing System
"Opps é uma plataforma ou toolkit para “montar” um CMS,
desenvolvido com Django, acompanha diversos pacotes
que visam suprir a necessidade de grandes portais de
conteúdo. Além disso o Opps possui uma estrutura flexível
para criação de novas apps."
YACOWS
+16 apps
Versão 0.1.x (Stable)
Versão 0.2.x (Developer)
Evolução do projeto
O Opps é utilizado em portais de grande trafego.
www.guiame.com.br
+ de 1,370,392 pageviews/dia,
+ de 2500 requests simultaneos
Django para portais de alta visibilidade.   tdc 2013
● Django é uma ótima plataforma (para trabalhar com banco relacional);
● CMS em Django não são tão legais como outros no mercado;
● Mercado editorial tem algumas peculiaridades;
● Alguns projetos Open Source não quiseram seguir com a proposta sugerida;
● Controle de todos os apps externos do CMS;
● Performance: inner join não é a melhor opção para tudo;
● Escalabilidade;
Porque criar um novo CMS?
● CMS escrito em Django;
● Escalabilidade;
● Denormalização (para performance);
● Foco no jornalista, workflow padrão simples;
● Multi-site, gerenciar multi sites dentro de apenas uma interface;
● Flexivel para desenvolvimento de novas apps;
● Modular (facilidade para criar apps);
● Integracao com Thumbor e outros serviços de imagens;
● Conceito de BOX que facilita o desenvolvimento front-end;
● Nunca perder uma URL que já existiu (redirecionamentos);
Qual é o diferencial do Opps?
● Organizacao de conteudo baseado em arvore de canais (mptt)
● Criação de tipos de conteúdo customizados (Container)
● Gerenciamento de urls (smart slug)
● Gestão de imagens, crop, multi upload e integrações (THUMBOR)
● Organizacao de homepages baseado no conceito de "boxes"
● Mobile middleware
● Django resources: Multisite framework e Redirect framework
● Customização do admin dinâmicamente via settings
● Admin personalizado com Django x-admin (versão 0.2)
● Gerador de "bootstrap" para criação de novas apps
Key features
canal subcanal conteúdo
{% load box_tags %}
<section>
{% get_box 'slider-home' template='slider_home.html' %}
</section>
Arquitetura
Arquitetura (Tipo de conteúdo)
Arquitetura (Controle de versão)
Performance
Opps apps
● Flatpages
● Post
● Link
● Imagens
● Ganalytics
● wiki
● gamification
● blogs
● registration
● facebook-comments
● sponsor
● Hubcast
● ...
github.com/opps/opps-feedcrawler | pip install opps-feedcrawler
$> manage.py refresh_feeds
Box dinâmico
{% load box_tags %}
<section>
{% get_box 'blog-birner' template='blog_birner.html' %}
</section>
http://virgula.com.br/esporte
RSS, JSON, XML, XML + FTP etc..
● Documentação;
● Sprint mensal;
● Código: desenvolver recursos propostos via issues;
● Divulgação;
● Utilizando;
● Testando;
● Feedback;
Como contribuir?
github.com/opps
Sprint, venha você também!
Django para portais de alta visibilidade.   tdc 2013
http://www.soudevcon.com.br
Trilha #Python
21 de Setembro
Osasco - SP
Perguntas?

Mais conteúdo relacionado

PPTX
Quokka CMS - Desenvolvendo web apps com Flask e MongoDB - grupy - Outubro 2015
PPTX
Módulo: 5 – Desenvolvimento de Páginas Web Dinâmicas: Javascript
PDF
Páginas dinâmicas
PDF
Apresentação sobre Drupal
PDF
drupal: ligando os nos da rede
PDF
Drupal 7 - Nova Versão para Novos Desafios
PDF
Instalando Drupal, Começando do Começo
PPTX
Mini Curso Wordpress
Quokka CMS - Desenvolvendo web apps com Flask e MongoDB - grupy - Outubro 2015
Módulo: 5 – Desenvolvimento de Páginas Web Dinâmicas: Javascript
Páginas dinâmicas
Apresentação sobre Drupal
drupal: ligando os nos da rede
Drupal 7 - Nova Versão para Novos Desafios
Instalando Drupal, Começando do Começo
Mini Curso Wordpress

Mais procurados (20)

PPTX
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
PPTX
Oficina Joomla para Iniciantes
ODP
Desmistificando web2py - #TDC2011
ODP
WordPress como CMS
PDF
Instalando e configurando o WordPress localmente
PPTX
Introdução ao desenvolvimento de páginas web estáticas
PDF
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
PDF
Conhecendo o WordPress
PDF
WordCamp SP 2014 - SEO para Desenvolvedores WordPress
PDF
Melhorando o desempenho do seu WordPress
PDF
LAMP: Desenvolvendo além do trivial
PDF
Introdução ao Wordpress
ODP
Phpreact flisol-fb-2014
PPTX
Minicurso Web. Front-end e HTML5 (parte 2)
PPTX
Gestão de conteúdos com aplicações instaladas em servidores
ODP
Javascript para adultos
PDF
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
PPTX
Palestra: Otimização de websites
PPTX
A Evolução do Front end
ODP
Wordpress SEO - Muito além de plugins
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
Oficina Joomla para Iniciantes
Desmistificando web2py - #TDC2011
WordPress como CMS
Instalando e configurando o WordPress localmente
Introdução ao desenvolvimento de páginas web estáticas
Drupal Performance - Dicas e técnicas para levar seu Drupal às nuvens
Conhecendo o WordPress
WordCamp SP 2014 - SEO para Desenvolvedores WordPress
Melhorando o desempenho do seu WordPress
LAMP: Desenvolvendo além do trivial
Introdução ao Wordpress
Phpreact flisol-fb-2014
Minicurso Web. Front-end e HTML5 (parte 2)
Gestão de conteúdos com aplicações instaladas em servidores
Javascript para adultos
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
Palestra: Otimização de websites
A Evolução do Front end
Wordpress SEO - Muito além de plugins
Anúncio

Destaque (11)

PDF
Python Flask app deployed to OPenShift using Wercker CI
PDF
Flask admin vs. DIY
PDF
What The Flask? and how to use it with some Google APIs
PDF
Flask Full Stack - Desenvolvendo um CMS com Flask e MongoDB
PDF
Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015
PDF
Desenvolvendo mvp com python
PDF
Web develop in flask
PDF
Flask Introduction - Python Meetup
PDF
Curso Java Básico Aula 01: Introdução e Dicas para quem está Começando
PPTX
Flask – Python
PDF
When to use Node? Lessons learned
Python Flask app deployed to OPenShift using Wercker CI
Flask admin vs. DIY
What The Flask? and how to use it with some Google APIs
Flask Full Stack - Desenvolvendo um CMS com Flask e MongoDB
Data Developer - Engenharia de Dados em um time de Data Science - Uai python2015
Desenvolvendo mvp com python
Web develop in flask
Flask Introduction - Python Meetup
Curso Java Básico Aula 01: Introdução e Dicas para quem está Começando
Flask – Python
When to use Node? Lessons learned
Anúncio

Semelhante a Django para portais de alta visibilidade. tdc 2013 (20)

PDF
ODP
Django - Muito além do básico
PPT
Case Drupal: Todeschini
PPTX
Workshop - Ionic + firebase
PDF
O que move a web atualmente?
PDF
Desenvolvimento web com software livre
PDF
Desenvolvimento web com Software Livre
PDF
Carrefour E-commerce - Multicloud Brasil Day 2017
PDF
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
PDF
Escalando apps com React e Type Script e SOLID
PPTX
Angularjs
ODP
Roadshow Brasília Novas funcionalidades Liferay 6
PDF
Administração de portais
ODP
Web Development em 2015
PPSX
Conhecendo o Django
PPTX
Desenvolvimento web - conceitos, tecnologia e tendências.
PDF
Introdução à Programação Web com Angular
PDF
As Novidades do I3geo
PDF
Plataforma Android: Produtividade Além do SDK
PDF
WSO2 - Portfólio de Produtos, Soluções e Suportes
Django - Muito além do básico
Case Drupal: Todeschini
Workshop - Ionic + firebase
O que move a web atualmente?
Desenvolvimento web com software livre
Desenvolvimento web com Software Livre
Carrefour E-commerce - Multicloud Brasil Day 2017
Análise sobre a utilização de frameworks em PHP: CakePHP, CodeIgniter e Zend
Escalando apps com React e Type Script e SOLID
Angularjs
Roadshow Brasília Novas funcionalidades Liferay 6
Administração de portais
Web Development em 2015
Conhecendo o Django
Desenvolvimento web - conceitos, tecnologia e tendências.
Introdução à Programação Web com Angular
As Novidades do I3geo
Plataforma Android: Produtividade Além do SDK
WSO2 - Portfólio de Produtos, Soluções e Suportes

Mais de Bruno Rocha (11)

PDF
Escrevendo modulos python com rust
PDF
The quality of the python ecosystem - and how we can protect it!
PDF
A Qualidade do Ecossistema Python - e o que podemos fazer para mante-la
PDF
PyData - Consumindo e publicando web APIs com Python
PDF
Carreira de Programador e Mercado de Trabalho
PDF
Quokka CMS - Content Management with Flask and Mongo #tdc2014
PDF
Web Crawling Modeling with Scrapy Models #TDC2014
PDF
Flask for CMS/App Framework development.
PDF
Guia alimentar de dietas vegetarianas para adultos
PDF
Using web2py's DAL in other projects or frameworks
PPT
Desenvolvimento web ágil com Python e web2py #qconsp #qcon
Escrevendo modulos python com rust
The quality of the python ecosystem - and how we can protect it!
A Qualidade do Ecossistema Python - e o que podemos fazer para mante-la
PyData - Consumindo e publicando web APIs com Python
Carreira de Programador e Mercado de Trabalho
Quokka CMS - Content Management with Flask and Mongo #tdc2014
Web Crawling Modeling with Scrapy Models #TDC2014
Flask for CMS/App Framework development.
Guia alimentar de dietas vegetarianas para adultos
Using web2py's DAL in other projects or frameworks
Desenvolvimento web ágil com Python e web2py #qconsp #qcon

Django para portais de alta visibilidade. tdc 2013

  • 1. Django para portais de alta visibilidade.
  • 3. OPen Publishing System "Opps é uma plataforma ou toolkit para “montar” um CMS, desenvolvido com Django, acompanha diversos pacotes que visam suprir a necessidade de grandes portais de conteúdo. Além disso o Opps possui uma estrutura flexível para criação de novas apps."
  • 6. Versão 0.1.x (Stable) Versão 0.2.x (Developer) Evolução do projeto
  • 7. O Opps é utilizado em portais de grande trafego. www.guiame.com.br + de 1,370,392 pageviews/dia, + de 2500 requests simultaneos
  • 9. ● Django é uma ótima plataforma (para trabalhar com banco relacional); ● CMS em Django não são tão legais como outros no mercado; ● Mercado editorial tem algumas peculiaridades; ● Alguns projetos Open Source não quiseram seguir com a proposta sugerida; ● Controle de todos os apps externos do CMS; ● Performance: inner join não é a melhor opção para tudo; ● Escalabilidade; Porque criar um novo CMS?
  • 10. ● CMS escrito em Django; ● Escalabilidade; ● Denormalização (para performance); ● Foco no jornalista, workflow padrão simples; ● Multi-site, gerenciar multi sites dentro de apenas uma interface; ● Flexivel para desenvolvimento de novas apps; ● Modular (facilidade para criar apps); ● Integracao com Thumbor e outros serviços de imagens; ● Conceito de BOX que facilita o desenvolvimento front-end; ● Nunca perder uma URL que já existiu (redirecionamentos); Qual é o diferencial do Opps?
  • 11. ● Organizacao de conteudo baseado em arvore de canais (mptt) ● Criação de tipos de conteúdo customizados (Container) ● Gerenciamento de urls (smart slug) ● Gestão de imagens, crop, multi upload e integrações (THUMBOR) ● Organizacao de homepages baseado no conceito de "boxes" ● Mobile middleware ● Django resources: Multisite framework e Redirect framework ● Customização do admin dinâmicamente via settings ● Admin personalizado com Django x-admin (versão 0.2) ● Gerador de "bootstrap" para criação de novas apps Key features
  • 13. {% load box_tags %} <section> {% get_box 'slider-home' template='slider_home.html' %} </section>
  • 15. Arquitetura (Tipo de conteúdo)
  • 18. Opps apps ● Flatpages ● Post ● Link ● Imagens ● Ganalytics ● wiki ● gamification ● blogs ● registration ● facebook-comments ● sponsor ● Hubcast ● ... github.com/opps/opps-feedcrawler | pip install opps-feedcrawler $> manage.py refresh_feeds Box dinâmico {% load box_tags %} <section> {% get_box 'blog-birner' template='blog_birner.html' %} </section> http://virgula.com.br/esporte RSS, JSON, XML, XML + FTP etc..
  • 19. ● Documentação; ● Sprint mensal; ● Código: desenvolver recursos propostos via issues; ● Divulgação; ● Utilizando; ● Testando; ● Feedback; Como contribuir? github.com/opps