Lillith13 / CannaCafe

0 stars 0 forks source link

CannaCafe

statusBadge

Visit the CannaCafe live site Here!

Your One Stop Shop For All Things Relating To Cannabis

Welcome to CannaCafe, the place where your inner child can finally be let loose! This platform is a lively online shop designed for fellow lovers and connoisseurs of the amazing and weirdly controversial herb with calming and healing properties. If you're passionate about the potent and smelly healing herb and an opposer to the government imposed hate directed at the kind and lovely sweetheart that is Cannabis, CannaCafe is the place for you.

splashPage

Table of Contents

General info

CannaCafe will be a versatile platform seamlessly integrating staff management, e-commerce, and restaurant functionalities. Tailored for businesses, it offers robust staff management tools, ensuring efficient organization. Members enjoy a user-friendly e-commerce and restaurant frontend, streamlining their experience. Additionally, our age-restricted displays provide a secure environment for guests, enhancing user safety and compliance.

Languages, Frameworks, and Tools

Python
JavaScript
HTML
CSS
Flask
React
Docker
AWS
Node.js
NPM

Setup

Startup Backend - from the root of this repository, run the following in the terminal:

Startup Frontend - from the file frontend, make sure you are using nvm v16 then run the following in the terminal:

Quick Tour

Sign-Up Modal

SignUpForm

Signup Error Handling

SignUpFormErrors

Birthday is also a requirement (styling to display this will be added soon)

Log In Modal

LoginModel

LoginDemoUsers

LoginErrors

Home Page

After clicking the Enter button on the splash page youll be brought here. You can roam as a guest, sign up, or log in.

Roaming as a guest, you can till view some products (non-age-restricted products only) & place orders (takeout & cart)

Logged out: Logged out HomePage

Logged in - Member and Base level Employees: Logged in HomePage

Logged in - Management (roles: Manager and Owner) Logged in FullAccess Homepage

Products

Products rendered by clicking the "Food" button - as viewed by Management Products By Category

Products rendered by clicking on the "View All Products button" - as viewed by Member or base level Employee Products by Type

Place Order

The shopping cart and the takeout bag are styled extremely similarly - Displayed is the shopping cart Cart

The checkout modals are a tad different however...

Checkout TakeoutBag

The checkout modal for the takeout bag, requires you to select an option

Back Checkout Options

Where-as the shopping cart checkout does not Cart Checkout

User Profile

Member Member Profile

Employee Employee Profile

Management Management Profile

Universal

This is is just scratching the surface, there is more to explore and much much more to come. In the meantime, the most current stable version is running HERE for you to test out 😊

Documetation

Backend Docs

Frontend Docs

All Current Screenshots

Current Features

Minimum Role Requirment Feature Available
Guest Read Products/MenuItems (filtered - age-restricted)
Read/Update Shopping Cart
Read/Update Takeaway Bag
Member Read Products/MenuItems (all)
Create/Read/Update/Delete Reviews*
Create/Read/Update/Delete Orders
Read/Update Wishlist (Shippable Products)
Read/Update Favorites (Menu Items)
Create/Read/Update/Delete Account &&*
Employee Create/Update (Clock in/out) Timecard
Read (Paystubs) Timecards
View coworker contact info
Management Create/Read/Update/Delete products/menu items
View ALL posted reviews
Create/Update Employee Accounts**

* Create/Update/Delete Reviews is Exclusive to users with "Member" role, Read accessible by all

&&* Delete Account is Exclusive to users with "Member" role

** BUT! ->

\^ Paystubs in the form of per-day worked pay

Future Plans

Implement user complaints. Similar to reviews but will be for general complaints a member may have about anything from shipping to customer service. These will be only viewable by management staff (Managers & Owners) and the user who submitted the complaint.

Add a small dash of social media in the mix by adding the ability for users to connect/friend one another. Piggybacking off this feature will come events. Where a user can reserve for an event and upon reservation there will be a notification sent to all users that fall into specific categories about the event (such as "event = private, notify only friends").

Connect maps to better develop the shopping cart, takeout features, complaints, friends, and events features.

Add user ability to DM each other

Add community forums

Add scheduling to staff pages

Themes

Restyling to accomodate various screen sizes and browsers

...figure out how to make this into a downloadable software and then app for mobile devices 😊