Portfolio project for Code Institute Full Stack software development course.

Overview

Comic Sales tracker

This project is the third milestone project for the Code Institute Diploma in Full Stack Software Development. You can see the final deployed site here.

Contents

UX

User stories

The application is designed to be a stock management system for comic creators.

As a user, I expect:

  • To be able to easily understand what information the application is asking for.
  • To be prompted to reorder stock when an item is running low.
  • To get reports after each input showing both gross and net profit in an easy to understand manner.
  • To be able to easily update sales.
  • To be able to easily update stock.

As a user, I want:

  • To be able to see the data I am to input to confirm it is correct.
  • To be able to easily navigate through the data.
  • To be able to add additional books directly to the command line without having to manually modify the code or the spreadsheet.

Flow Chart

Before starting on the project, I created a mock up using lucid chart to break down the logic I would need to follow to ensure that the application worked correctly.

Flowchart

Features

Welcome Screen

  • The application displays a welcome message on first launch. This would clearly layout the purpose of the application. This should be followed with the choice to update stock or to update sales.

Update Stock

  • The application should give the user the option to update stock of individual books. This should be easy to update while getting all the information needed to maintain the sales data base including:
    • Number of items ordered.
    • Cost of the order
    • Date of the order

Update Sales

  • The application should prompt to see if the user is update sales from a convention or from the online store.

Con Sales

  • When updating con sales the program prompts the user following information:
    • The name of the convention.
    • The date of the convention.
    • The sales of each book.
    • The expenses incurred during the convention (broken down into table costs, travel costs, parking, and miscellaneous costs.

Online Sales

  • When updating online sales the program prompts the user following information:
    • The date of the sales.
    • The sales of each book.

Update Spreadsheets

  • The application pushes all information to a linked google sheets doc for easy viewing.

Confirm Data

  • After each input the application repeats the information back to the user and ask them to confirm before it pushes the data to the spreadsheet.

Rerun Application

  • Once the application has finished running it gives the user the option to rerun to add any additional sales/ stock that’s required.

Features left to implement

Update Cost Per Unit

  • When an order is restocked it should automatically recalculate the cost per unit based on total cost of all items. This should also recalculate all previous sales to reflect the new CPU.

Add New Book

  • The application will give the user the option to add a new product when ordering new stock. This will automatically update all other functions to prompt for data for this product when carrying out functions.

Con Profits

  • The application uses this information (and the CPU generated from the stock function) to work out both the net and gross profit from the convention sales.

Low Stock Warning

  • The application will prompt the user when stocks of an item are running low.

Automatic Reordering

  • The application should offer the user the option to automatically send an email to the printer to order a restock of a book. This email should include:
    • The restock amount.
    • The date of the last reprint.

Data Validation

  • The application validates all information to ensure that the correct data is being passed to it. If incorrect data is passed to it will tell the user what the issue is and how they can resolve it.

Technologies Used

  • Python
  • Git
  • Google Docs
  • Google Sheets
An interview engine for businesses, interview those who are actually qualified and are worth your time!

easyInterview V0.8B An interview engine for businesses, interview those who are actually qualified and are worth your time! Quick Overview You/the com

Vatsal Shukla 1 Nov 19, 2021
Crystal Smp plugin for show scoreboards

MCDR-CrystalScoreboards Crystal plugin for show scoreboards | Only 1.12 Usage !!s : Plugin help message !!s hide : Hide scoreboard !!s show : Show Sco

CristhianCd 3 Oct 12, 2021
πŸ§™ A simple, typed and monad-based Result type for Python.

meiga πŸ§™ A simple, typed and monad-based Result type for Python. Table of Contents Installation πŸ’» Getting Started πŸ“ˆ Example Features Result Function

Alice Biometrics 31 Jan 08, 2023
Some custom tweaks to the results produced by pytkdocs.

pytkdocs_tweaks Some custom tweaks for pytkdocs. For use as part of the documentation-generation-for-Python stack that comprises mkdocs, mkdocs-materi

Patrick Kidger 4 Nov 24, 2022
A simple malware that tries to explain the logic of computer viruses with Python.

Simple-Virus-With-Python A simple malware that tries to explain the logic of computer viruses with Python. What Is The Virus ? Computer viruses are ma

Xrypt0 6 Nov 18, 2022
A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification)..

apispec A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification). Features Supports th

marshmallow-code 1k Jan 01, 2023
Highlight Translator can help you translate the words quickly and accurately.

Highlight Translator can help you translate the words quickly and accurately. By only highlighting, copying, or screenshoting the content you want to translate anywhere on your computer (ex. PDF, PPT

Coolshan 48 Dec 21, 2022
:blue_book: Automatic documentation from sources, for MkDocs.

mkdocstrings Automatic documentation from sources, for MkDocs. Features - Python handler - Requirements - Installation - Quick usage Features Language

1.1k Jan 04, 2023
100 Days of Code Learning program to keep a habit of coding daily and learn things at your own pace with help from our remote community.

100 Days of Code Learning program to keep a habit of coding daily and learn things at your own pace with help from our remote community.

Git Commit Show by Invide 41 Dec 30, 2022
learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your personal portfolio

learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your

BDFD 6 Nov 05, 2022
FireEye Related Projects

FireEye FireEye Related Projects Tor-IP-Collector Simple python script that will collect a list of TOR IPs from the SecOps Institute Github and inject

Taran Ulrich 2 Nov 12, 2022
A set of Python libraries that assist in calling the SoftLayer API.

SoftLayer API Python Client This library provides a simple Python client to interact with SoftLayer's XML-RPC API. A command-line interface is also in

SoftLayer 155 Sep 20, 2022
Python Deep Dive Course - Accompanying Materials

Python Deep Dive Various Jupyter notebooks and Python sources associated with my Udemy Python 3 Deep Dive course series: Part 1: Mainly functional pro

Fred Baptiste 1.1k Dec 30, 2022
Sphinx theme for readthedocs.org

Read the Docs Sphinx Theme This Sphinx theme was designed to provide a great reader experience for documentation users on both desktop and mobile devi

Read the Docs 4.3k Dec 31, 2022
Poetry plugin to export the dependencies to various formats

Poetry export plugin This package is a plugin that allows the export of locked packages to various formats. Note: For now, only the requirements.txt f

Poetry 90 Jan 05, 2023
Python For Finance Cookbook - Code Repository

Python For Finance Cookbook - Code Repository

Packt 544 Dec 25, 2022
OpenAPI (f.k.a Swagger) Specification code generator. Supports C#, PowerShell, Go, Java, Node.js, TypeScript, Python

AutoRest The AutoRest tool generates client libraries for accessing RESTful web services. Input to AutoRest is a spec that describes the REST API usin

Microsoft Azure 4.1k Jan 06, 2023
The mitosheet package, trymito.io, and other public Mito code.

Mito Monorepo Mito is a spreadsheet that lives inside your JupyterLab notebooks. It allows you to edit Pandas dataframes like an Excel file, and gener

Mito 1.4k Dec 31, 2022
script to calculate total GPA out of 4, based on input gpa.csv

gpa_calculator script to calculate total GPA out of 4 based on input gpa.csv to use, create a total.csv file containing only one integer showing the t

Mohamad Bastin 1 Feb 07, 2022
Obmovies - A short guide on setting up the system and environment dependencies required for ob's Movies database

Obmovies - A short guide on setting up the system and environment dependencies required for ob's Movies database

1 Jan 04, 2022