Class XII computer science project.

Overview

Computer Science Project — Class XII

Kshitij Srivastava (XI – A)

Introduction

The aim of this project is to create a fully operational system for a medicine store to keep track of its day-to-day functioning — from keeping track of current inventory of medicine stock, to recommendations to restock certain medicines, to (possibly) generating beautiful invoices for the customer upon purchase — all done online.

Goals

There are a few goals and key features which will most certainly make their way into the project to help get the basic backbone in place. They are listed as follows:

  • Create a modern, lightweight and powerful inventory management solution to help keep track of all the current stock in the store along with the data about medicine quantity, potency and expiry date to allow the employees access to vital data quickly and easily.
  • Create dynamic and beautiful cards which provide important snippets of information based on the current medicine stock, data and other vital information.

The ethos of the project revolves around not only creating the best user experience possible but also creating the best developer and development experience possible as well because, while most projects focus on the former, the latter is left relatively untouched leading to bad coding practices, messy code, using legacy software and making code difficult to read and change later down the line. This is however, not what this project will allow. The core functionality will not compromise the development experience of this program.

Potential Features

There are also a few features that I would love to integrate into the project however, they may not make it in the final build either due to time or complexity reasons but, if implemented, will be as polished and well-thought-out as possible – not making the user feel like they were added for the sake of adding new features; these are listed as follows:

  • Add a fully customisable customer invoice that can be modified on-the-fly without hassle, rather than a base template.
  • Add simple bookkeeping to the program so that small stores don't need to work with the error-prone pen and paper method to store their day-to-day earnings and losses.
  • Add user accounts to the program to that multiple employees can be given their own account with account-specific features and, add admin level access to monitor all accounts and features globally.

Technologies

Python

I shall be using the latest version of Python (which, at the time of writing is 3.9.5) in a virtual environment for easy deployment without having to first install Python on another system. I will also split the code into multiple files to make the code more readable the easy to work with along with some basic object-oriented programming concepts to make the development of the program as easy and fun as possible.

The following libraries will bse used with Python:

  • Flask

    • Flask is a light and powerful Python framework to create basic websites using Python and HTML. This should make the project easy to maintain and making changes to the code quick and easy. It also makes it very easy to host this project on a custom domain at a future date. The version of Flask being used for the project is 2.0.0.
  • MySQL Connector

    • MySQL connector is a Python library that allows for easy connection to a local MySQL database used for storing all the important information regarding the project.
  • Sphinx

    • Sphinx is a Python library that helps to easily create an HTML file for project documentation using the Restructured Text markup language in docstrings for the code.

MySQL

The MySQL flavour of SQL developed by Oracle is going to be the main database of choice for the program and act as the backend to store all the vital project information like medicine details, employee details and sale information.

IDE

The IDE of choice for this project is Pycharm Professional as it has all the benefits of the Pycharm IDE but with added support for Flask and easy linking of external databases.

Version Control

The project is open source and will be hosted on GitHub to ensure that the teacher can check up on the progress made on the development of the program at any time and allow foe the publishing and submission of the same online easily.

Owner
Kshitij Srivastava
Kshitij Srivastava
A notebook explaining the principle of adversarial attacks and their defences

TL;DR: A notebook explaining the principle of adversarial attacks and their defences Abstract: Deep neural networks models have been wildly successful

1 Jan 22, 2022
For my Philips Airpurifier AC3259/10

Philips-Airpurifier For my Philips Airpurifier AC3259/10 I will try to keep this code

AcidSleeper 7 Feb 26, 2022
Android Blobs Organizer

Android Blobs Organizer

Sebastiano Barezzi 96 Jan 02, 2023
easy_sbatch - Batch submitting Slurm jobs with script templates

easy_sbatch - Batch submitting Slurm jobs with script templates

Wei Shen 13 Oct 11, 2022
Static bytecode simulator

SEA Static bytecode simulator for creating dependency/dependant based experimental bytecode format for CPython. Example a = random() if a = 5.0:

Batuhan Taskaya 23 Jun 10, 2022
Telop - Encode and decode messages using an interpretation of the telegraphic code devised by José María Mathé

telop Telop (TELégrafoÓPtico) - Utilidad para codificar y descodificar mensajes de texto empleando una interpretación del código telegráfico ideado po

Ricardo F. 4 Nov 01, 2022
Apilytics for Python - Easy API analytics for Python backends

apilytics-python Installation Sign up and get your API key from https://apilytics.io - we offer a completely free trial with no credit card required!

Apilytics 6 Sep 29, 2022
Opensource Desktop application for kenobi.

Kenobi-Server WIP Opensource desktop application for Kenobi. Download the apple watch app to get started. What is this repo? It's repo for the opensou

Aayush 9 Oct 08, 2022
Darkflame Universe Account Manager

Darkflame Universe Account Manager This is a quick and simple web application intended for account creation and management for a DLU instance created

31 Nov 29, 2022
Materials and information for my PyCascades 2021 Presentation

Materials and information for PyCascades 2021 Presentation: Sparking Creativity in LED Art with CircuitPython

GeekMomProjects 19 May 04, 2022
pvaPy provides Python bindings for EPICS pvAccess

PvaPy - PvAccess for Python The PvaPy package is a Python API for EPICS7. It supports both PVA and CA providers, all standard EPICS7 types (structures

EPICS Base 25 Dec 05, 2022
Encode and decode cancro lang files to and from brainfuck

cancrolang Encode and decode cancro lang files to and from brainfuck. examples python3 main.py -f hello.cancro --run Hello World! the interpreter is n

witer33 1 Dec 20, 2021
tagls is a language server based on gtags.

tagls tagls is a language server based on gtags. Why I wrote it? Almost all modern editors have great support to LSP, but language servers based on se

daquexian 31 Dec 01, 2022
TikTok Auto Claimer Made By Aim low!#9999 Leaked By bazooka#0001

Zues Auto Claimer Leaked By bazooka#0001 put proxies in prox.txt put ssid in sid.txt put all users you want to target in user.txt for the login just t

1 Jan 14, 2022
Geodesic Dome Math

dome Geodesic Dome Math Python dome tool dome.py calculates an icosahedron or 2v geodesic dome and creates 3d printable hubs as OpenSCAD sources. usag

Brian Olson 2 Feb 09, 2022
Sheet2export - FreeCAD macro to export spreadsheet

Description This is FreeCAD macro to export spreadsheet to file.

Darek L 3 Jul 09, 2022
Syntax highlighting for yarn.lock and bun.lockb files

Yarn.lock Syntax Highlighting Syntax highlighting for yarn.lock and bun.lockb files Installation Plugin is not publushed yet on Package Control, to in

Alexander Kuznetsov 4 Jul 06, 2022
The official Repository wherein newbies into Open Source can Contribute during the Hacktoberfest 2021

Hacktoberfest 2021 Get Started With your first Contrinution/Pull Request : Fork/Copy the repo by clicking the right most button on top of the page. Go

HacOkars 25 Aug 20, 2022
Programa que organiza pastas automaticamente

📂 Folder Organizer 📂 Programa que organiza pastas automaticamente Requisitos • Como usar • Melhorias futuras • Capturas de Tela Requisitos Antes de

João Victor Vilela dos Santos 1 Nov 02, 2021
Stop python warnings, no matter what!

SHUTUP - Stop python warnings, no matter what! Sometimes you just can't mute python warnings. Use this library to solve this. Installation pip install

80 Jan 04, 2023