Skip to content

DoDo is a web-based todo application built using Django and Django REST Framework (DRF).

Notifications You must be signed in to change notification settings

Abdullahxz/DoDo

Repository files navigation

DoDo App

DoDo is a web-based todo application built using Django and Django REST Framework (DRF). Originally developed as an assignment for Continious Integration.

Assignment

Develop a CI pipeline for this app which includes the following features

  • Run when a PR is created with develop as base branch.
  • Run when a Push event happens in develop branch.
  • Run migrations in pipeline.
  • Run unit tests.
  • If a test fails, send a failure message in slack and terminate the pipeline.
  • If and only if all test cases pass, push the docker image to dockerhub.
  • Send a slack message in channel after the successful completion of pipeline.

Getting Started

Prerequisites

  • Python 3.x
  • PostgreSQL

Installation

As a best practice, it is advised to create a virtual environment to store this project's dependencies separately. You can install virtualenv with

  1. Install virtualenv (optional)
    pip install virtualenv
  2. Clone the repository.
    git clone https://github.com/abdullahxz/DoDo.git
  3. cd into repo directory.
    cd DoDo
  4. Create env (optional)
    python -m venv env
  5. Activate virtualenv (optional)
    source env/bin/activate
  6. Install depndencies
    pip install -r requirements.txt
  7. Make sure you have a .env file with following variables.
    DB_NAME = xxx
    DB_USER = xxx
    DB_PASSWORD = xxx
    DB_HOST = xxx
    DB_PORT = xxx
    
  8. Apply migrations
    python manage.py migrate
  9. Seed data into database for development environment
    python manage.py seed_data
  10. Run unit tests
    python manage.py test
  11. Run dev server
    python manage.py runserver

About

DoDo is a web-based todo application built using Django and Django REST Framework (DRF).

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published