Giter Site home page Giter Site logo

bangazon-issues's Introduction

Bangazon E-commerce Platform

Welcome to Bangazon!

Congratulations on completing our onboarding training! You have come a long way and gained valuable knowledge and skills. Now it's time to apply everything you have learned to a real client project: the Bangazon E-commerce Platform.

Project Description

The Bangazon E-commerce Platform aims to provide a comprehensive online shopping experience for customers. As a team, we will be building an e-commerce platform where customers can view products, add them to their cart, place orders, manage their profiles, and much more. Our client has high expectations, and we have an exciting opportunity to deliver a top-notch solution.

Project Planning

To ensure a successful project, we have carefully planned each phase. Our planning documentation covers all the important aspects of the project, including:

  • Detailed project requirements: We have documented the specific features and functionalities requested by the client. These requirements serve as our roadmap throughout the development process.

  • Tickets for Planning and Tracking: We have created a set of tickets to capture the planning process and track our progress. These tickets break down the project into manageable tasks, ensuring that every aspect of the project is accounted for. By assigning and tracking these tickets, we can stay organized and monitor our progress effectively.

  • Client Feature Requirements: We have compiled a list of features that the client is asking for. These features include customer registration and authentication, product viewing and searching, shopping cart and order management, product and seller details, profile management, and product categories.

Planning and Implementation Guidelines

We want to ensure that our project meets the client's expectations and adheres to industry best practices. Here are some important guidelines to follow:

  • Comprehensive Wireframes: We have created wireframes that illustrate the user journey and interactions within the platform. These wireframes provide a visual representation of our intended user interface and guide our design and development efforts.

  • Database Design (ERD): We have designed a database schema (Entity-Relationship Diagram) that maps out the relationships between different entities in our system. This ERD helps us organize and structure our data effectively.

  • Project Board: Our project board serves as a central hub for planning, organizing, and tracking our progress. Each ticket represents a specific task or feature, allowing us to assign responsibilities, set milestones, and monitor our progress as we bring the Bangazon E-commerce Platform to life.

  • Collaboration and Communication: We will utilize GitHub Discussion Tickets for seeking assistance, discussing project-related topics, and keeping track of our planning process. This collaborative approach ensures efficient communication and allows the team to provide guidance, support, and feedback throughout the project.

  • Coding Standards: We will follow the community coding guidelines for the specific language you are building this in. This includes using consistent naming conventions, documenting classes and methods with docstrings, using proper indentation, and maintaining clean and readable code.

Planning Process Tracking

The Senior Engineer has created a set of tickets to help you track your progress and ensure a systematic approach to the planning tasks. These tickets are designed to guide you through the essential steps of the planning process and provide checklists for tracking subtasks within each item.

To facilitate an organized workflow, it is recommended to follow the suggested order when completing the tickets:

  1. Create Project Board
  2. Define MVP Features
  3. Write ERD
  4. Create Wireframe
  5. Create Presentation
  6. Submit Proposal Links
  7. Conduct Proposal Approval Meeting
  8. MVP Approval Checklist

By following this order, you can build a solid foundation for the project and ensure that each step is completed in a logical sequence. Each ticket contains detailed instructions and checklists to assist you in accomplishing the necessary subtasks. Feel free to refer to the individual tickets for more information and to track your progress effectively.

Support and Mentorship

Throughout the project, our dedicated team of senior engineers will provide guidance and support. They are here to assist you in understanding concepts, tools, and practices. While they will be working on their own projects, they will be available to review discussion tickets, provide feedback, and answer questions during designated meeting times.

Let's Build Something Great!

Now that we have a clear plan, well-defined requirements, and the support of our senior engineers, it's time to embark on this exciting journey. Together, we will create a robust and user-friendly e-commerce platform that exceeds our client's expectations. Let's collaborate, learn from each other, and deliver an outstanding product!

Happy coding!

bangazon-issues's People

Contributors

dylankmoore avatar

Watchers

 avatar

bangazon-issues's Issues

Write ERD

Description:
Create an Entity-Relationship Diagram (ERD) for the Bangazon E-commerce Platform. The ERD will serve as a visual representation of the database schema, outlining the relationships between different entities.

Checklist:

  • Identify the main entities in the system, including customers, products, orders, and sellers.
  • Define the relationships between the entities using appropriate cardinality and connectivity notation.
  • Ensure that the ERD captures user-related data, including authentication and resource assignment to individual users.
  • Include at least one 1 -> many relationship in the ERD.
  • Incorporate at least one many -> many relationship in the ERD.
  • Review and validate the ERD for accuracy and completeness.

Submit Proposal Links

Description:
Submit the necessary links for the proposal of the Bangazon E-commerce Platform. These links include the ERD, presentation, wireframes, project board, and app repository.

Checklist:

  • Provide a link to the ERD document showcasing the database schema.
  • Share the link to the presentation slides that communicate the project overview, features, ERD, wireframes, and implementation guidelines.
  • Include the link to the wireframes document, illustrating the user interface and interactions within the application.
  • Submit the link to the project board, tracking the progress and tasks related to the Bangazon E-commerce Platform.
  • Share the link to the app repository containing the codebase for the project.

Ensure that all the links are accessible by the instructional team and submitted within the designated timeframe.

By completing this ticket, you will provide the necessary documentation for the proposal presentation and enable the instructional team to review your progress effectively.

Create Wireframe

Description:
Design comprehensive wireframes for the Bangazon E-commerce Platform to visualize the user interface and interactions within the application. The wireframes will provide a clear understanding of the user journey and guide the development process.

Checklist:

  • Identify all the key views/pages in the application, including the home page, product listing, product detail, shopping cart, order history, and profile pages.
  • Design wireframes for each view/page, ensuring that the layout, elements, and functionality are represented.
  • Include notes or arrows on the wireframes to describe user interactions and the expected outcomes.
  • Validate the wireframes for consistency and usability.

Conduct Proposal Approval Meeting

Description:
Conduct a meeting with the seniors and product manager to gather additional insights, clarify requirements, and seek approval for the proposed plan.

Checklist:

  • Present the proposed plan, including the ERD, wireframes, and MVP features.
  • Actively listen to the client's feedback, questions, and concerns.
  • Seek clarification on any ambiguous requirements or expectations.
  • Discuss potential enhancements or modifications based on client input.
  • Obtain client approval and sign-off on the proposed plan.

Define MVP Features

Description:
Identify the minimum viable product (MVP) features for the Bangazon E-commerce Platform. The MVP represents the core functionalities required to deliver value to users and meet the client's initial requirements. Move the tickets to the project board created.

Checklist:

  • Review the client's feature requirements and prioritize them based on importance and feasibility.
  • Select the essential features that will form the foundation of the initial product release.
    • Keep the Assessment requirements in mind while selecting the features (go to the documentation/planning.md file for this)
  • FInd the tickets for the selected features in the tickets documentation file (documentation/tickets.md) and add them to the project board, assigning them to appropriate columns or task statuses.

By completing this ticket, you will have defined the MVP features for the Bangazon E-commerce Platform and ensured that they are reflected on the project board.

MVP Approval Checklist

Description:
Before finalizing the Minimum Viable Product (MVP) for the Bangazon E-commerce Platform, it is essential to ensure that the project meets all the Student Assessment Requirements. Use this checklist to review your project and verify compliance with the necessary criteria.

Checklist:

  • Backend Framework: Confirm that you have used the backend framework taught during the course (e.g., ASP.NET, Django, etc.).
  • Frontend Libraries/Frameworks: Verify that you have utilized the major frontend libraries and/or frameworks learned during the course (e.g., React, etc.).
  • Multiple Routes: Ensure that your application supports multiple routes to display different views to the user, and users can navigate to each route/view.
  • Single Responsibility Principle: Demonstrate proficiency by following the Single Responsibility Principle and writing modular code where each module has a single responsibility (e.g., displaying a list of things, displaying a single thing, managing application state, etc.).
  • Form for Creating Resources: Validate the presence of a form that allows users to create a new resource.
  • Select, Radio, or Checkbox Group: Confirm that your form includes a <select> element, radio button group, or checkbox group to choose a related resource. For example, if your application allows users to create new plants for their home, one of the fields in the form should enable them to select options such as the room it will be in, the required sunlight level, and the plant type.
  • User Data Deletion: Test the ability of customers to delete their own data while being prevented from deleting other customers' data.
  • User Data Editing: Ensure that customers can edit their data as required.
  • Flexible UI Layout: Implement a flexible layout for your user interface by either using a third-party framework like Bootstrap or authoring your own CSS using Flexbox.
  • Error-Free Console: Verify that the console in your Developer Tools does not display any errors.
  • Warning Understanding: Demonstrate the ability to explain any warnings that appear in the console.
  • Single Page Application: Ensure that your application does not refresh on page change, showcasing your understanding of building a single page application.
  • Professional Commit and PR Messages: Maintain professional and meaningful commit and pull request messages throughout the project.
  • Project Details:
    • Ensure your project name is in the <title> tag of the head.
    • Verify that your project name is correct in the name property in your package.json.
  • Forms/Data:
    • Validate that all inputs have the correct type (e.g., numeric inputs should be of type number, long form text should be a textarea).
    • Ensure that all data is professional and relevant (e.g., descriptions should not be "test" or "example").
  • No Zombie Code: Remove any chunks of code that are commented out, as having them in the codebase is unprofessional.
  • No Console Logs: Remove any console logs from your codebase before finalizing the MVP.
  • Design:
    • Implement a limited color palette in your UI design.
    • Ensure that most text copy is left-aligned for consistency.
    • Utilize proper padding and margins to enhance the visual appeal and readability of your UI.
    • Maintain consistency in views, cards, fonts, sizes, and other design elements.
    • If you use images in your application, ensure they are resized, if needed, for display in the UI, and the correct ratio is maintained.

By completing this ticket and verifying that your project meets all the Student Assessment Requirements

Create Project Board

Description:
Set up a project board to track the progress of the Bangazon E-commerce Platform. The project board will help organize tasks, assign responsibilities, and monitor the completion of different project components. Additionally, add the decided MVP tickets to the project board.

Checklist:

  • Create a new project board using GitHub's project management feature.
  • Define columns for different project phases or task statuses (e.g., To Do, In Progress, Done).
  • Add the MVP tickets to the project board, representing the core functionalities of the Bangazon E-commerce Platform.
  • Regularly update the project board, moving cards across columns as tasks progress.

By completing this ticket, you will have a well-organized project board that reflects the project's progress, including the incorporation of the decided MVP tickets.

Create Presentation

Description:
Prepare a presentation for the proposal of the Bangazon E-commerce Platform. The presentation should communicate the chosen plan, including the project overview, features, ERD, wireframes, and implementation guidelines. Each student will have up to 5 minutes to present their proposal, followed by 5 minutes for questions and discussion.

Checklist:

  • Create slides using web presentation software (e.g., Google Slides, Canva, Prezi).
  • Include an introduction to the project, emphasizing the problem it solves for customers.
  • Clearly articulate the proposed solution to the problem, highlighting the key features and functionalities.
  • Incorporate the ERD image and provide a brief explanation of the database structure.
  • Include wireframe images for each view/page and describe the user interactions.
  • Link the created project board in the presentation.
  • Practice the presentation to ensure it fits within the allotted time (5 minutes) and conveys the proposed plan effectively.

By completing this ticket, you will have created a compelling presentation that showcases the Bangazon E-commerce Platform proposal and effectively communicates the chosen plan to the audience.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.