/PhotoStack

Innovative and easy to use personal photo collection service 🖼Uses machine learning to order and categorise photos automatically 🤖Frameworks and languages used include TypeScript, Python, React.js, Apollo GraphQL, and Express.js.

Primary LanguageTypeScriptBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

PhotoStack - License XO code style

PhotoStack is an innovative and easy to use personal photo collection service. It uses AI techniques to order and categorise photos without any help from the user.

Motivation

Status

The project is currently under active development.

  • Develop MVP
  • Add tests
  • Deploy service to AWS
  • Add types to frontend codebase
  • Setup CI/CD pipeline
  • Setup LetsEncrypt cert

Frameworks used

Frontend

Backend

  • nginx - Serves compiled react/frontend code, proxy request to Flask/Restify
  • Node.js - Express.js for REST API, Apollo GraphQL used for GraphQL API. Most of the actual business logic and job distribution is to be done here.
  • Apollo GraphQL - GraphQL library
  • Python - Consumes jobs to do work with ML libraries
  • Redis - Job queue, i.e. images to process
  • MinIO - Object (image) storage system
  • MongoDB - Storing metadeta and references to objects

License

PhotoStack is BSD 3-Clause licensed.