Vidhish Trivedi, Vikas Kalyanapuram and Munagala Kalyan Ram from third year iMTech as ‘Team Dockerators’ tackled a college library management project at AFourathon 2023 Hackathon which made them win second prize! They aimed to create an application that efficiently handles student and book data within the college library. Key functionalities included adding and managing student and book details, as well as facilitating book lending and returns.
Sharing the details with Naviiina, Vidhish, a tech enthusiast with a knack for exploring new frameworks and technologies mentions that the hackathon evaluation criteria was focused on the quality of implementation on the basis of Coding Principles, Unit Testing, GitHub History and Code Quality. “We applied SOLID and DRY principles to ensure our codebase was maintainable and well-structured. Robust unit testing was implemented to validate functionality and minimize bugs. Our GitHub commit history showcased the project’s evolution and collaborative development efforts. Emphasis was also placed on producing clean, maintainable code. Additionally, we containerized the application using Docker and deployed it on the cloud, making it a comprehensive software/devops project that covered design, testing, and deployment phases,” he adds.
(Pic: Vidhish Trivedi)
Kalyan’s love for software development runs deep, and he thrives on the excitement of discovering new tools and frameworks found AFourathon 2023 Hackathon motivating to take part in. “we had most of the skills required to implement a full-fledged application that best addresses the problem statement. The hackathon presented us with intriguing new challenges, which involved deploying our project on cloud services, a requirement that added an exciting dimension to our work. As the work went on, we were able to address most of the issues presented in the problem statement, which increased our confidence and made us believe that we had a chance to win the hackathon,” adds Kalyan.
(Pic: Munagala Kalyan Ram)
The most challenging aspect of our project was grappling with a comprehensive ‘engineering asset guide’ provided by the hackathon organizers. Vikas, an enthusiastic software developer dedicated to tackling real-world challenges and constantly expanding his skillset along with his team in AFourathon 2023 Hackathon easily tackled the challenge. He says, “The guide encompassed various facets of software engineering, some of which were familiar, such as UI/UX Diagrams, DB Schemas, and git branching strategies. However, it also introduced us to unfamiliar concepts like Technology Architecture Design, Scalability Features, Unit Testing Methods, and Dev/QA Environment setup. As a team of three students with no prior formal software engineering training or experience in completing a full-scale software project, this initially seemed daunting.”
(Pic: Vikas Kalyanapuram)
To overcome this challenge, they not only adopted a structured approach but divided the unfamiliar concepts among team members based on individual interests and strengths. Furthermore, whenever any team member discovered a valuable resource for understanding a concept, they diligently catalogued these resources in a shared document. This ensured that all team members had a foundational understanding of the various aspects required for successful project implementation. This collaborative and organized approach enabled them to navigate and address the unfamiliar terminologies and concepts effectively.
Key Technologies Used
The backend server was implemented in Java, using the Spring-Boot framework to create a RESTful API. This choice was influenced by the team’s familiarity with Java’s object-oriented programming, which allowed them to adhere to SOLID principles, enhancing code design.
For the frontend, they adopted React.js, a renowned JavaScript framework, capitalizing on its versatility and ease of use in building a user-friendly interface. To ensure code quality and reliability, the team incorporated JUnit for backend unit testing, a standard framework for automated Java unit tests.
The team containerized both the backend and frontend using Docker, simplifying deployment and ensuring consistent environments. Their application found its home on AWS, with a CI/CD pipeline set up through GitHub Actions for efficient deployment and continuous integration.
Empowering Libraries with Streamlined Management
“The hackathon had several problem statements where we selected the library management project. Our solution is easy to use and has an intuitive user interface. This application will allow librarians to manage thousands of books and students who issue these books with a simple click of a button, making their life much easier, avoiding the need to maintain large registers to record the books borrowed, new books added to the library, and more,” adds Vidhish.
The second prize winners of AFourathon 2023 Hackathon team urge everyone to engage actively in events and hackathons, emphasizing their enjoyable and educational nature for acquiring new skills while crafting exciting projects. They offer valuable advice to aspiring hackathon enthusiasts:
- Plan Strategically:Define clear goals and objectives for your project. Plan your time wisely, allocate tasks, and establish deadlines.
- Collaborate Effectively:Teamwork is key. Ensure everyone’s strengths are leveraged, and communication flows smoothly.
- Stay Focused:While innovation is vital, ensure your project aligns with the hackathon’s theme and goals.
- Learn Continuously:Be open to learning new technologies and tools during the hackathon. Don’t be afraid to ask for help or mentorship.
- Test Rigorously:Thoroughly test your solution to catch bugs and ensure it works as intended.
- Pitch Persuasively:Prepare a compelling presentation to showcase your project effectively to judges.
- Have Fun: Lastly, enjoy the experience; hackathons are about learning, networking, and innovation. Good luck!