We started working with Django back in version 0.96, when the framework was in its first steps. Over the years we have been leveraging Django’s ecosystem.
Case studies in Django
We have used Django for different industries, being able to tackle many challenges by taking their capabilities to its boundaries.
Building an online platform that allows advertisers to create, monitor and manage media content to effectively reach out and engage target audience through screens strategically located throughout the city. →Dispatch Ads - Django and Postgresql - Case study
Inspiring the next generation by developing a responsive online community of career professionals, educators, and high school students. →Career Village - Django and Postgresql
“Sophilabs is the booster rocket for my startup. Their work is great and they made my success their goal, so I can focus more on my startup's future.” Jared Chung - Founder and CEO - Career Village
Behind the site
Django’s ORM and migrations
We have put Django’s ORM to the limits, by building everything from simple to very complex queries, with our main focus on optimization.
values_list are our friends when we need to minimize database hits.
We like PostgreSQL. The powerful Django migration system allows us to handle data and schema migrations seamlessly.
Few frameworks are able to offer an admin panel as great as Django out of the box. Our customers love how fast we can prototype CRUD views using it.
We always use Grappelli to enhance the look & feel of the admin. It comes with a bunch of UI components that help us create customizable and usable forms.
In combination with staticfiles (collectstatic), we use django-compressor to minify and combine css and js precompiled with tools such as babel, sass, and postcss (autoprefixer), served from a CDN. Static or media images (ImageField) are optimized using
Django Two Scoops
Reading this book is a must for our team. We have adopted several practices from it and included them in our guidelines.
See our code guidelines for django.
We try hard to apply and improve our guidelines for the django framework. Read our guidelines.
Django has excellent tools for creating tests.
We use django.test.TestCase and django.test.Client to create unit and functional tests, and Selenium to run our acceptance tests. We use
factory_boy to manage test data and
django-jenkins to measure coverage and run linters in our CI server.
Django Rest Framework
Front end applications become more popular every day making DRF a great tool for providing restful APIs while leveraging all the power of Django on the back end.