Project Candidates - CSCI-462-01-2021/Fork-Bomb GitHub Wiki

Choosing a Project:

  1. Habitica
    • A habit tracker/to do list that treats goals like an RPG
    • Option of web, Android, or iOS:
      • Web has details to set up locally on Linux, MacOS, Windows, and Docker; JavaScript, CSS, Vue, SCSS, CoffeeScript, HTML
      • Android is easily built and ran using android studio; Kotlin, Java, HTML, JavaScript, Ruby, CSS
      • iOS; Swift, Objective-C, Other
    • Several guides available for "blacksmiths" (programmers) and in game guild to join
    • Recommend getting approval before creating new features (may not be approved otherwise)
    • Plenty of issues advertised with help wanted on github
    • Reason for Ranking: Was the easiest to get all the requirements installed for building, lots of issues marked as 'help wanted', and a fun concept for a software in general

  1. Legesher's Tree-Sitter-Python
    • Allows for coding in python in languages other than English, improving accessibility for those who are not native English speakers
    • Friendly community for those new to contributing to FOSS
    • Has a tagging system for issues to be fixed that includes which problems are good for new contributes
    • Have to install: https://nodejs.org/en/download/
    • Even after the installation it won't recognize 'tree-sitter' as a command, making testing changes impossible. We would have to seek help with this issue first.
    • Reason for Ranking: Installation has so far been unsuccessful, but the community is very open to newcomers, the goal of the software is worthwhile and the issue of installation should be solved by changing the version of node.

  1. Pi-Hole
    • Network wide ad-blocking software
    • Designed as DNS sinkhole made to run on a Linux device, letting normal traffic pass through while denying advertisements
    • Primarily deployed on Raspberry Pi devices, but can be used on other Linux distributions and has a Docker-specific fork
    • includes web interface dashboard with robust configurations and statistics
    • Primarily coded in Bash with some Python and PHP
    • Welcoming to newcomers and code has ample comments
    • Install should be simple in theory, since it only needs a clean Linux install to deploy. However, this typically means running the built code on a separate machine
    • Reason for Ranking: While the goal of the software is worthwhile, the languages used are not beginner-friendly