Welcome to the Online Shop project – our hackathon entry for Phase 1! This repository contains a fully functional e-commerce application built to demonstrate foundational DevOps skills in three key areas:
- Git & GitHub
- Linux
- Docker
In this phase, your focus is on understanding the provided developer code, reviewing how these core topics are implemented, and making any necessary enhancements. When you're ready, you'll submit your work via our designated Google Form.
- Hackathon Start Date: 20th Feb, 9:00 AM
- Hackathon End Date: 21st Feb, 9:00 AM
- Submission Deadline: 24 hours after the repository link is shared
- Important Dates
- Overview
- Guidelines & Resources
- Tasks
- Submission Instructions
- Submission Details for Your Repo README
- Evaluation Criteria
- License
- Contact
The Online Shop project is a demo e-commerce application designed for Hackathon Phase 1. It serves as a platform to showcase best practices in code quality, development workflows, and system design with a focus on:
- Git & GitHub: Effective version control, branching strategies, and collaborative workflows.
- Linux: Command-line operations, system administration, and file management.
- Docker: Principles of containerization and preparing code for deployment in a containerized environment.
Your task is to familiarize yourself with the code, make enhancements if necessary, and ensure your final submission reflects your understanding of these topics.
Before diving into the tasks, please review the following key resources:
- CONTRIBUTING.md: Guidelines for code contributions, commit messages, and overall coding standards.
- ROADMAP.md: Insights into the project vision, future enhancements, and milestones.
- Repository Documentation: Explore the repository to understand how the application is built. Pay special attention to the
srcdirectory where the main application logic resides, as well as configuration files such asvite.config.jsand styling inindex.css.
These documents provide the context needed to understand the project requirements and the best practices expected for your contributions.
For this hackathon phase, your work will center around the following tasks:
- Repository Management: Fork and clone the repository, then create a new branch for your work. Ensure your commit history is clean and well-documented.
- Collaboration Practices: Follow best practices for version control by making descriptive commits, creating pull requests, and engaging in code reviews.
- Workflow Optimization: Identify any areas where the Git workflow can be improved and document your suggestions for future enhancements.
- Command Line Proficiency: Review the code for examples of Linux command usage. Test and verify that file operations, system scripts, and environment configurations are functioning as expected.
- System Administration: Examine how the application handles Linux-based operations such as permissions, file management, and process monitoring. If you see room for improvement, implement those changes and document them.
- Documentation: Clearly document any Linux-related enhancements you make, explaining how they optimize the project’s performance or usability.
- Containerization Principles: Even though a Dockerfile is not provided in this repository, consider how you would package and deploy this application using Docker. Reflect on the design decisions that would facilitate containerization.
- Conceptual Improvements: Propose any modifications or improvements that could make future Docker integration smoother. Document your suggestions clearly in your pull request.
- Code Readiness: Ensure the codebase is structured in a way that aligns with Docker best practices, preparing it for eventual containerized deployment on AWS EC2 / Azure VM / Google Compute Engine (Your Choice of Cloud).
Important
When you have completed your work, please follow these steps for submission:
-
Review & Test Your Work:
- Make sure all changes are committed and pushed to your GitHub repository (or branch). Test the application thoroughly to confirm that your enhancements do not break existing functionality.
-
Prepare Your Submission:
- Gather your full name, email address, and the URL to your GitHub repository (or the specific branch/commit that contains your work).
- Make sure to add Demo video(which should be publically accessible) explaining your implementations for the project. This is the important aspect for evaluation. The Videos / Articles / Submissions should be submitted to the google form as well as shared on your LinkedIn/ twitter for extra points.
-
Submit via Google Form:
- Complete the submission form here:
-
Timely Submission:
- Ensure that your submission is completed before the hackathon deadline. Late submissions will not be eligible for prizes.
When submitting your repository link, your README must include:
-
Project Title & Overview:
Clearly state the project name (e.g., "Online Shop – Hackathon Phase 1 Submission") and provide a brief overview of your solution, emphasizing how it addresses Git & GitHub, Linux, and Docker.
-
Task Descriptions & Implementations:
- Describe the tasks you worked on. Detail how you managed your repository, the Linux commands or scripts you used, and any improvements or suggestions regarding Docker integration.
Note
- Provide video demo link (3-5 minutes only, not more than 5 minutes)
-
Key Changes & Enhancements:
Highlight the major changes or enhancements you made, including any refactoring, feature additions, or optimizations, along with documentation updates.
-
Final Submission Statement:
Include a clear declaration that this repository (or branch) represents your final submission for Hackathon Phase 1.
-
Version or Branch Information:
Specify which branch or commit should be reviewed (e.g., "Final submission branch:
final-phase1").
Make sure this information is visible in your repository's README so that evaluators can easily review your work.
Submissions will be evaluated based on the following criteria:
-
Adherence to Guidelines:
Your work should comply with the project’s coding standards, documentation, and contribution guidelines as described in this README and the CONTRIBUTING.md file.
-
Git & GitHub Proficiency:
Evaluation of your version control practices, including branching strategy, commit quality, and pull request process.
-
Linux Competence:
Demonstrated ability to effectively use Linux for system administration tasks, scripting, and command-line operations within the project.
-
Docker Readiness:
Although a Dockerfile is not provided, your documentation and code structure should reflect an understanding of containerization best practices and readiness for future Docker integration.
-
Quality of Enhancements:
The significance and quality of your improvements, refactoring, and overall impact on the project’s functionality.
-
Documentation & Clarity:
Clear and concise documentation that explains your work, including details in your repository README about your tasks and changes.
-
Timeliness:
Your submission must be completed and submitted before the hackathon deadline.
This project is licensed under the MIT License. See the MIT file for details.
For any questions or further information, please contact:
- Email: iemafzalhassan@gmail.com , amitabhdevops2024@gmail.com , deveshagent@gmail.com
- Join Discord Server
Good luck for the hackathon
Happy Learning :)