Skip to content

Platform that provide more than 150 good DSA problems for tech enthusiats

Notifications You must be signed in to change notification settings

Jai-Marothiya/AlgoHub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This Repository is participating in hacktoberfest

HacktoberFest 2k24

AlgoHunt

Project Overview

AlgoHunt is a responsive platform that offers over 150 DSA-based problems across 5+ platforms, empowering 300+ active users to enhance their data structures and algorithms (DSA) skills.

Key Features:

  • Implemented Google login with JWT authentication to ensure user data security.
  • Filters for problems based on difficulty and platform, making it easier for users to find suitable challenges.
  • Efficiently maintained 150+ problems through an admin dashboard utilizing KnexJS for server-database connections and real-time updates.
  • Designed a user-friendly UI/UX that boosts user retention through personalized progress tracking.

Technologies Used:

  • ReactJS
  • Node.js
  • Express.js
  • PostgreSQL
  • Material UI
  • Knex.js
  • JavaScript
  • CSS
  • Google OAuth
  • pgAdmin

Deployed URL:

https://algohunt.in

Getting Started

To set up the project on your local machine, follow these steps:

  1. Fork the repository:

    • Click the "Fork" button at the top-right corner of this page.
  2. Clone the repository:

    git clone https://github.com/Jai-Marothiya/AlgoHub.git
    cd AlgoHub
    

Install Dependencies

  1. For the backend (Node.js):

    cd server
    npm install
    
  2. For the Frontend (React.js):

    cd client
    npm install

Run the project

  1. Start the backend server:

    cd server
    npm start
    
  2. Start the frontend:

    cd client
    npm start

Access the Application


Contribution Guidelines

We encourage contributions of all kinds! You don’t need to have knowledge of the entire tech stack to contribute. Here are some ways you can help:

  • Bug Fixes: Identify and fix bugs.
  • New Features: Implement new features based on open issues.
  • Documentation: Improve the documentation to help users understand the project better.
  • UI Improvements: Suggest or implement UI/UX improvements.

Branching Strategy

When working on a feature or bug fix, please create a new branch:

git checkout -b feature/your-feature-name

Reporting Issues

If you find a bug or have a feature request, please follow these steps:

  1. Check existing issues: Ensure your issue hasn’t already been reported.
  2. Submit a new issue: Use the provided issue template to describe the bug or feature.

Submitting Pull Requests

To submit a pull request (PR), follow these steps:

  1. Create a branch for your changes.

    git checkout -b feature/your-feature-name
    
  2. Make your changes and commit them:

    git commit -m "Description of your changes"
    
  3. Push to your fork:

    git push origin feature/your-feature-name
    
  4. Submit a pull request: Go to your fork on GitHub and click "Compare & pull request."

  5. Provide a detailed description of what your PR does and why it's necessary.

Project Structure

Here’s a brief overview of the folder structure:

.
├── server/              # Backend source code
├── client/              # Frontend source code
├── README.md            # Project overview
├── CONTRIBUTING.md      # Contribution guidelines
├── LICENSE              # Project license
└── ...

Acknowledgments

Thank you to all the contributors who have helped make AlgoHunt a better platform!