Skip to content

jamescardona11/algopath_app

Repository files navigation

AlgoPath

The goal of the application is to create a DSA Tracker to take control of the most popular exercises of LeetCode.

Learning Paths

A learning path is a path through a set of exercises that you can choose to follow. It will be based on the difficulty of the exercise and the amount of time you have to complete it.

You can find multiple learning paths around web, example:

  • Grind75
  • Bind75
  • NeetCode150
  • AlgoExpert

My idea is put that paths in the app, and show the user the progress of the learning path, and the next exercise to do, create a timer and different statistics about the learning path. Maybe create a leaderboard of users and a gamification system.

Features

  • Learning Paths (todo)
  • Problem List (todo)
  • LeetCode API (todo)
  • GPT Helper (todo)
  • Timer (todo)
  • Progress dashboard (todo)
  • Leaderboard (todo)
  • Gamification system (todo)
  • Sync across devices (todo)
  • Mobile app (todo)
  • Dark mode (todo)

Stack

  • Flutter
  • Sembast Database
  • Provider
  • GoRouter

Project Roadmap and task list

Full detail about the project can be found in the Task manager.

Overview

  • [] Learning Paths
  • [] Problem List
  • [] LeetCode API
  • [] GPT Helper
  • [] Timer
  • [] Progress dashboard
  • [] Leaderboard
  • [] Gamification system
  • [] Sync across devices
  • [] Mobile app
  • [] Dark mode
  • [] Flutter Web
  • [] Flutter Desktop

How to Contribute

  • Please open the notion page, review the task list and assign yourself a task.
  • If you have any questions, please open an issue or contact me via LinkedIn.
  • Create a PR with the task structure to be tracked. [TAS-X] GitHub PR Title
  • USE SQUASH MERGE to merge PRs
  • Once the PR is merged, to update the task list.