All Projects → shubhank-saxena → djangoReact-template

shubhank-saxena / djangoReact-template

Licence: GPL-3.0 license
A perfect template for you to focus on starting your hack project or your deployed project. Leave all the gibberish of setup and just focus on innovating and creating amazing tech

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to djangoReact-template

EduSmart
It utilizes 3D, Augmented reality to give real-life simulations or feels of various models and make the learning process more impactful and fascinating. With an interactive live feature, students can ask the teacher their doubts instantly and also discuss.
Stars: ✭ 23 (+0%)
Mutual labels:  hacktoberfest2021
TruHealth
A website, which is wholly focused on Mental Health issues.
Stars: ✭ 16 (-30.43%)
Mutual labels:  hacktoberfest2021
Hacktoberfest-Nepal-2020
A beginner-friendly open source repository to create your first pull request.
Stars: ✭ 15 (-34.78%)
Mutual labels:  hacktoberfest2021
open-source-contribution
to learn how to do pull request and do contribution to other's repo
Stars: ✭ 78 (+239.13%)
Mutual labels:  hacktoberfest2021
HacktoberFest2021
Beginner-friendly repository for Hacktober Fest 2021. Start your contribution to open source through baby steps. 💜
Stars: ✭ 33 (+43.48%)
Mutual labels:  hacktoberfest2021
controller-topology-project
The Controller Topology Project models how controllers connect to and map to each other for all gaming history
Stars: ✭ 17 (-26.09%)
Mutual labels:  hacktoberfest2021
Web-Dev-Helper
Developer Helper where you can find all resources related to open source and software developer resources
Stars: ✭ 33 (+43.48%)
Mutual labels:  hacktoberfest2021
backend
Cambiatus GraphQL API
Stars: ✭ 17 (-26.09%)
Mutual labels:  hacktoberfest2021
CodeBucket
A beginner-friendly project to help you in open-source contributions. Made specifically for contributions in HACKTOBERFEST! Please leave a star ⭐ to support this project! ✨
Stars: ✭ 22 (-4.35%)
Mutual labels:  hacktoberfest2021
VCPlayerBot
Telegram bot to stream videos in telegram voicechat for both groups and channels. Supports live steams, YouTube videos and telegram media. Supports scheduling streams, recording and many more.
Stars: ✭ 432 (+1778.26%)
Mutual labels:  hacktoberfest2021
NbGodotBoilerplate
This is a simple kickstarter project for NimbleBeasts projects. It comes with some standard features and little helpers as well as a some stuff, no one has time for in a game jam.
Stars: ✭ 18 (-21.74%)
Mutual labels:  hacktoberfest2021
30-Days-Of-Code
This File Contains all solutions of: Hackerrank 30 day of code. You are welcome to add any other variants of them or in other language if you know, but DO NOT MAKE THIS REPO ACT LIKE A SOURCE OF +1.
Stars: ✭ 14 (-39.13%)
Mutual labels:  hacktoberfest2021
Algorithms
Short explanations and implementations of different algorithms in multiple languages
Stars: ✭ 37 (+60.87%)
Mutual labels:  hacktoberfest2021
ML-ProjectYard
This repo consists of multiple machine learning based projects with frontend
Stars: ✭ 105 (+356.52%)
Mutual labels:  hacktoberfest2021
Hacktoberfest 21
No description or website provided.
Stars: ✭ 17 (-26.09%)
Mutual labels:  hacktoberfest2021
Ravys-unified-discord-ruleset
Extensive, yet polished community ruleset, aimed at reducing the work of moderators
Stars: ✭ 21 (-8.7%)
Mutual labels:  hacktoberfest2021
wallet-adapter
Modular TypeScript wallet adapters and components for Solana applications.
Stars: ✭ 964 (+4091.3%)
Mutual labels:  hacktoberfest2021
nodejs-express-jwt
Node.js Express REST API boilerplate with JWT Authentication and support for MySQL and PostgreSQL.
Stars: ✭ 56 (+143.48%)
Mutual labels:  hacktoberfest2021
CPCODES-Hacktoberfest2021
No description or website provided.
Stars: ✭ 11 (-52.17%)
Mutual labels:  hacktoberfest2021
Xpendi
iOS expense tracker
Stars: ✭ 13 (-43.48%)
Mutual labels:  hacktoberfest2021

djangoReact Template

GitHub issues Size GitHub Pipenv locked Python version

Pre-commit License

This is the most convenient starter template of Django+React code with following features -

  • Django serving React
  • Contains all the dependencies required to create django-rest-api.
  • Contains pre-commit for optimized and clean code.
  • Secure application with production grade env system.

A perfect template for you to focus on starting your hack project or your deployed project. Leave all the gibberish of setup and just focus on innovating and creating amazing tech ❤️

Installation and Setup

Prerequisites

  • You should have NodeJS installed (12.x or above)
  • pipenv should be installed in the system. It can be done using sudo pip3 install pipenv.
  • Change the version of the python in Pipfile according to the python version available in your system

Setup and running of project (Frontend + Backend)

  • Fork the repo and clone it.
  • Navigate to the cloned repo.
  • Activate env using pipenv shell and install dependencies by pipenv install
  • Install all react dependencies by running yarn install
  • Run build_local.sh. (Make sure it's in executable mode by sudo chmod +x build_local.sh)
  • Start the backend server python ./manage.py runserver

This runs the backend server at default port 8000. Open http://localhost:8000 to view it in the browser.

Setup and running of project (Only Frontend)

  • At your root directory run yarn install to install all the dependencies
  • To start react dev server yarn start

This runs the app in the development mode. Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.

Production grade deployment

This project tried to follow the best practices and you can directly deploy the repo with the following points -

  • Create an .env in your deployment environment(refer .env.example file for the same).
    • For django SECRET_KEY you can generate one from here
    • Set DEBUG = 'False' when using in production/live deployment.
  • Add the hostname/url(the one on which your deployed server is working) in the settings.py file (under allowed hosts array)
  • Add your suitable TIME_ZONE and LANGUAGE_CODE in settings.py according to your zone and locale.

Note [Important]

  • The manage.py file is moved out of the default django project. So everytime you run manage.py startapp app, it will create the required app in the root of the project. So you will have to move it in the backend folder and while registering the app in settings.py, you will have to mention backend.app.
  • The config folder in the backend directory is the actual root project of the django project (one which has django settings and main app urls).
  • There is a folder named demo in the backend folder. That's a demo api folder for reference.
  • This project has pre-commit. So if you are using this project on which a lot of people are contributing, make sure you run pre-commit install in the project repo so that git hooks are enabled.
  • Stuff you can delete (I added them just to refer)
    • index.js and related files in ./src/ and app.js and related files in ./src/components/
    • demo folder from ./backend/

Contribution to the project

GitHub issues GitHub pull requests

Git workflow

Please follow a systematic Git Workflow -

  • Create a fork of this repo.
  • Clone your fork of your repo on your pc.
  • Add Upstream to your clone
  • Every change that you do, it has to be on a branch. Commits on master would directly be closed.
  • Make sure that before you create a new branch for new changes,syncing with upstream is neccesary.

Commits

  • Write clear meaningful git commit messages (Do read this).
  • Make sure your PR's description contains GitHub's special keyword references that automatically close the related issue when the PR is merged. (Check this for more info)
  • When you make very very minor changes to a PR of yours (like for example fixing a failing Travis build or some small style corrections or minor changes requested by reviewers) make sure you squash your commits afterward so that you don't have an absurd number of commits for a very small fix. (Learn how to squash at here)
  • When you're submitting a PR for a UI-related issue, it would be really awesome if you add a screenshot of your change or a link to a deployment where it can be tested out along with your PR. It makes it very easy for the reviewers and you'll also get reviews quicker.

Todo

  • Create a pip package (current focus)
  • Create a CI/CD branch to automate testing (if any)
  • Create a GCP Deployment (both engine and VM) branch
  • Create a Azure deployment branch
  • Create a AWS deployment branch

Thank you!

If you find this project useful, please Leave a star on this repo! Also, if you can , buy me coffee! ❤️ Buy Me A Coffee

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].