Git Product home page Git Product logo

cbom-dashboard's People

Contributors

jakequilty avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

cbom-dashboard's Issues

Backend Gets Dependency Files

The backend should:

  • Take an org
  • Pull down all of the orgs repos
  • Loop through all of the files in each org looking for a dependency file
  • Store the dependency files in the database
  • We will need to create a Repo class for this

React App Base

A base frontend for the project that can be developed in a Docker container. Should be able to ask the user for a Github OAuth token to be used by the backend. This doesn't need to be pretty, just working well enough to help let the project take shape and be developed Agiley alongside the backend.

#2

Proof of Concept Environment

We need to get a PoC environment going. This environment would be a shell of our application. We will need the start of a React frontend, Node.js backend, and a MySQL database. These would all be running in Docker containers. This is the starting point to start building these pieces up from there.

  • React App Base #4
  • Node.js Backend Base #5
  • MySQL Database Base #6

Dependencies Listing Groups Different Languages

Dependencies from different languages with same names listed together.

Example:
dotenv
Ruby
JS

These should not be in the same list and should be in their own lists according to language type OR maybe it'd be okay if the language version was specified in the RepoList? I don't really like the second solution, but I'm not sure how to cleanly do the first.

Usable Frontend

Currently the frontend just takes input from the user and sends it to the backend. We need to be able to view and handle the data the backend retrieves on the frontend side. It should be intuitive for the user to use

Show failures after scan

The server passes back a list of failures, like dep files that couldn't be scanned and repos that couldn't be scanned. This needs to be displayed to the user.

Multiple Users

Database already supports multiple users, but frontend and backend don't. It would be nice to have a login page and the ability to have multiple users that could either see their own dataset OR see a dataset that's shared between other users in a group. Privileges would be a thing here too

Node.js Backend Base

Docker container with our Node.js backend working for PoC. Should be able to grab data from the Github API, using a token from the React frontend, and store it in the database.

#2

Clean-Up Server Services

I got sloppy towards then end and start calling sequelize directly in the services. This goes around the whole reason I was passing services as variables into the class. This will be hard to mock in tests and needs to be passed as a class parameter instead

More Parsers

Right now the app only scans:

  • Gemfile.lock
  • requirements.txt
  • package.json

Multiple Database Connection Management

The backend needs to fix how it manages database connections. We will be using multiple connections to store repo data. There needs to be a way to pass the database connection around to handle this from different sections of the code at the same time.

Session Authentication

Right now the frontend literally just passes the userID in the body of the request to the server. This is bad and there needs to be some sort of session token authentication here instead

MySQL Database Base

MySQL Database container base to serve as the jumping point for #3. Needs to be able to store data for #5

#2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.