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 extensive ecosystem.
Case Studies in Django
We have used Django for different industries, and have been able to tackle many challenges by maximizing Django's capabilities to the 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 pushed Django’s ORM to the limits by building everything from simple to very complex queries always with a 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’s right out of the box. Our customers love how fast we can use it to prototype CRUD views.
We always use Grappelli to enhance the look and feel of the admin. It comes with a vast array 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
This fundamental book is required reading for our team. We have adopted several practices from this book 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 provides 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.