• Stars
    star
    188
  • Rank 204,531 (Top 5 %)
  • Language
    Python
  • License
    Other
  • Created over 10 years ago
  • Updated 9 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Project template used at Fueled for scaffolding new Django based projects. 💫

django-init is a project boilerplate for Django based projects.

Build Status

Features

  • Django 3.2.x
  • Python 3.9.x
  • Poetry Support
  • Support for black!
  • 12-Factor based settings management via django-environ, reads settings from .env if present.
  • Supports PostreSQL 13.0 (support of postgis-3.0 is available).
  • Django Rest Framework 3.13.x.
  • Uses django_sites instead of django.contrib.sites.
  • Uses mkdocs for project documentation. Optionally, password protect the docs when deployed via Ansible
  • Uses pytest as test runner.
  • Github Actions
  • Custom User app, for easier extensibility.
  • Custom Auth app with JWT based Token Backend system with login, logout and current_user_profile modification views for easier extensibility.
  • robots.txt and humans.txt configured.

Optional

Getting Started

Install cookiecutter with brew install cookiecutter or pip install cookiecutter.

cookiecutter gh:Fueled/django-init

It will ask you couple of questions required to generate the project. It will generate a folder containing all the files in your current working directory.

If you opt to setup the project automatically, it will also:

  • initialize a git repo and bump initial tag and version.
  • create a virtualenv in the folder venv inside the project.
  • install all the python dependencies inside it.
  • create poetry.lock file after resolving dependencies and then generate requirements.txt and requirements_dev.txt for production and dev use respectively, for backward-compatibility.
  • create a postgres database and run the initial migration against it.

then only thing you'll need to do is:

  1. cd into the new github_repository folder just created.
  2. Run make run or activate virtualenv with poetry shell and run ./manage.py runserver

Don't forget to carefully look at the generated README. Awesome, right?

You can also explore the wiki section for details on advance setup and usages.

Managing dependencies

Poetry

To guarantee repeatable installations, all project dependencies are managed using Poetry. The project’s direct dependencies are listed in pyproject.toml. Running poetry lock generates poetry.lock which has all versions pinned.

You can install Poetry by using pip install --pre poetry or by following the official installation guide here.

Tip: We recommend that you use this workflow and keep pyproject.toml as well as poetry.lock under version control to make sure all computers and environments run exactly the same code.

Other tools

For compatibility, requirements.txt and requirements_dev.txt can be updated by running

poetry export -f requirements.txt -o requirements.txt
poetry export -f requirements.txt -o requirements_dev.txt --with dev

or

make generate_requirements

Articles

Release Policy

django-init is a rolling release project. Commit and fixes are added to master branch on regular basis and always have latest stable django and associated libraries. You are advised to follow-up with changelogs.

Changelogs

Refer to HISTORY.md.

Code of Conduct

Everyone interacting in the django-init project's codebase, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.

Related Projects


Built with ♥ at Fueled

More Repositories

1

flowr

FlowR is a wrapper class around the Fragment Manager.
Java
121
star
2

fab.ulous

Simplify FAB menus creation
Kotlin
59
star
3

snippety

A wrapper class on top of SpannableStringBuilder with utility methods for android and custom spans.
Java
50
star
4

reactiveswift-to-combine-cheatsheet

A list ReactiveSwift classes and operators with their equivalent for Combine
45
star
5

ios-icon-generator

A terminal tool that generates app icon sets for Xcode
Ruby
45
star
6

DataSource

Swift
35
star
7

frontend-dev-challenge

Submissions for the Fueled Frontend Dev Challenge
27
star
8

Rover

Testing/Interaction for your Smart Contract made simple.
JavaScript
15
star
9

reclaim

Change the way you use RecyclerView.
Kotlin
13
star
10

django-push-notifications

[unmaintained] A library for easily sending and configuring push notifications with ZeroPush and Urban Airship
Python
12
star
11

nodejs-graphql-template

Opinionated starter template for NodeJS based GraphQL Server with prisma used at Fueled.
TypeScript
10
star
12

ios-utilities

A compilation of small utilities used in Fueled projects
Swift
9
star
13

cookiecutter-angular

Frontend project template for Angular-1 based web projects.
JavaScript
8
star
14

django-user-verification

Package to help out with verifying new users.
Python
6
star
15

booot-bot

A bot that sends out a O.O.O. message for all the people on the Justworks ICS calendar
JavaScript
4
star
16

swiftlint-yml

4
star
17

exercise-kotlin-android

Initial short form coding exercise for mobile engineers in Kotlin
Kotlin
3
star
18

fastlane-plugin-fueled

Fueled fastlane plugin
Ruby
3
star
19

annotics

Analytics made simple
2
star
20

blockchain-playground

Test projects on the blockchain
WebAssembly
2
star
21

ReactiveExamples

A simple example project demonstrating usage of reactive frameworks
Swift
2
star
22

dotfiles

Fueled's starter package for your dev machine
Shell
1
star
23

OpenCV-iOS-macOS

OpenCV for macOS served using Cocoapods.
Ruby
1
star
24

exercise-swift-ios

Initial short form coding exercise for mobile engineers in Swift
Swift
1
star
25

garage-sdk

Ruby
1
star
26

exercise-android

Kotlin
1
star
27

ethanol-ui-components

Objective-C
1
star