HaiderSultanArc / LinuxDistro4U

LinuxDistro4U is a Web Application that recommends you a Linux Distro based on your Responses on a set of Questions, using Machine Learning

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LinuxDistro4U

Find the best Linux Distro for yourself

Screenshot from 2021-04-21 20-10-30


Desciption:

Choosing a Linux Distro can be difficult as there is a ton of options to go with. So, I made this little website. It's a Questionnaire based website that uses Machine Learning to predict the Linux Distro that will best suit you, based on your response. It makes the choice for you and gives a single best name of the distro for your priorities.

Visit Website here: LinuxDistro4U

Techologies used:

The project was divided into 2 parts:

1. Machine Learning Model

  • For Machine Learning, I worked in Python Tensorflow TensorFlow. For my model to work on Browser, I used TensoflowJS that imported TensorflowLite Model from Google Storage.

2. Frontend Development

  • For Frontend Development, I worked in ReactJS React

3. Hosting and Data Storage

  • I used Firebase Firebase for hosting and firebase realtime datbase for data storage

Things I learned:

  • Collecting Data for Machine Learning
  • Data analysis and Processing for Machine Learning
  • Developing Machine Learning Models
  • Deploying ML models
  • Developing Frontend in ReactJS for ML Applications
  • Dockerization
  • Gitub Action CI/CD
  • Using Google Cloud Console

Milestones:

Version 1.0:

  • Create a Linux Distro Library with all their features (Only Distros that can be used as Desktop, are active for more than 10 years are included)
  • Collect Data for Machine Learning
  • Develop Machine Learning Model
  • Develop pages for Website
  • Develop Arc'Ion and his Speech System
  • Develop Questionnaire System
  • Develop Input Vector From responses
  • Integrating Tensorflow.Keras Model into Website using TensorflowJS, host model on firebase
  • Host version 1.0 on Firebase

Version 1.5:

  • Upgrade to React 18
  • Updrade to mui
  • Move Linux Distro Library and Questions to Firebase
  • Move TensorFlow Model to firebase using firebase-admin

Version 2.0:

  • Setup CI/CD using Github Actions
  • Develop a Python Backend for the Application
  • Use TensorFlow Model with Python Backend
  • Dockerize the solution
  • Host version 2.0 on Vercel

Version 3.0:

  • Include Linux Distros that are Active for 5 or more years and can be used as Desktop
  • Re-Collect the Training Data
  • Re-Train the Model and Deploy it
  • Host version 3.0 on Vercel

Version 4.0

  • Include Linux Distros that are Active for 5 or more years and are special purpose
  • Re-Collect the Training Data
  • Re-Train the Model
  • Host version 4.0 on Vercel


Connect with me:

About

LinuxDistro4U is a Web Application that recommends you a Linux Distro based on your Responses on a set of Questions, using Machine Learning


Languages

Language:JavaScript 47.8%Language:Python 36.0%Language:SCSS 6.4%Language:CSS 5.0%Language:Jupyter Notebook 4.1%Language:HTML 0.8%