Code Monkey home page Code Monkey logo

application_archived's Introduction

DEPRECATED

Old piximi monorepo -> see piximi/piximi

Piximi

Travis (.org) branch Travis (.org) branch

A web-based deep learning tool for classification of human cells, created with Tensorflow.js and React. https://www.piximi.app

Please make sure to clean your browser cache, since we are continuously developing new features:)

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Development

Set up your development environment

Option 1: Develop locally without Docker

  1. Install npm and Node.js: https://www.npmjs.com/get-npm
  2. Verify the installation by: node --version and npm -v
  3. Install the node dependencies with npm install
  4. Clone the project: git clone https://github.com/piximi/application.git and move into the repo with cd application
  5. Run npm start from within the root directory of the repo, which should pop up a new tab your browser pointing at http://localhost:3000

Option 2: Develop using Docker-Compose

  1. Clone the project: git clone https://github.com/piximi/application.git and move into the repo with cd application
  2. Make sure you have docker-compose installed: docker-compose version
  3. From within the root directory, run docker-compose up. (Note you might want to run docker-compose up --build whenever you make changes to the Dockerfile.dev.)
  4. You should be able to see the application page at http://localhost:3000. You won't need to restart the server as long as the docker-compose is running, the app will be dynamically relaoded.

Development process

There is no master branch in this repo, and develop is the default branch that you should branch off when you want to make changes. Although in some rare cases the maintainers of the repo could merge hot-fix PRs directly to production branch, in general developers follow the process:

  1. Branch off the latest remote develop branch either in a forked repo or the same repo (requries write access to the repo).
  2. Make changes, commit the changes and create a PR against the develop branch.
  3. Make sure all of the tests pass.
  4. Ask the maintainers of the repo to merge the PR for you, usually they will be the reviewers of your PR.
  5. PRs merged to develop will trigger a deployment to the dev server.

Maintainers can merge the develop to production to trigger a deployment/promotion to the prod server. External contributors will need to follow the CONTRIBUTING guide.

Deployment

You can deploy by running: npm deploy

You can define where to deploy in the package.json file under: ** homepage **

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning.

License

This project is licensed under the BSD 3-Clause License - see the LICENSE.md file for details

Acknowledgments

  • Hat tip to anyone whose code was used
  • Inspiration
  • etc

application_archived's People

Contributors

0x00b1 avatar alexchrisf avatar annecarpenter avatar daviddao avatar ebnerdennis avatar jhung0 avatar lopaavol avatar moserle avatar rexwangcc avatar shntnu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

application_archived's Issues

Separating view and machine learning code

The front end looks amazing - we should take some time to talk about a good API specification to separate view from machine learning (currently it's not that clean). Maybe it makes sense to even split them into two GitHub repositories.

It would be nice to have either an API specification or design doc on how we want to include AI modules. I could spend some time (with another student at ETH Zurich) working on the ML backend side.

Write a proposal for binary classification feature

How should users perform binary classification?

In the current version a user needs to create two categories (e.g. success and failure). Is this acceptable? It can be awkward when the negative class is un-or-illdefined.

Use TypeScript

Maybe not relevant yet but thinking about open sourcing and encouraging more external developers, we could imagine on moving to TypeScript for more type safety (like deployed in tensorflow.js)

It could also help us get moving towards continuous integration and deployment.

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.