Git Product home page Git Product logo

image-processing-api's Introduction

Image Processing API

First Project for Advanced Full-Stack Web Development, NANODEGREE - Udacity.
API that can be used to scale images via URL parameters.


Installation

Build

npm run build

Build the TypeScript files into JavaScript files and save the JS files in the ./build directory.

Start the server

npm run start

Start running the server on port 3000.


Other Scripts

npm run dev

Start running the server w/ nodemon from src/app.ts

npm run devjs

Start running the server w/ nodemon from build/app.js

npm run test

Build and run Jasmine

npm run jasmine

Run Jasmine w/o building

npm run prettier

Run Prettier

npm run lint

Run ESLint

ENDPOINT

Resize Image

Example: http://localhost:3000/api/resize/?filename=<ImageName>&height=<height>&width=<width>

Resize the image filename using the Height and Width in the URL parameters.

Preview Image

URL does have Height and Width parameters

Example: http://localhost:3000/api/preview/?filename=<ImageName>&height=<height>&width=<width>

Diplay resized image from assets/resized

URL does have only filenane parameter

Example: http://localhost:3000/api/preview/?filename=<ImageName>

Diplay full size image from assets/full

FLOWCHART

Built With

  • Node
  • TypeScript
  • Jasmine
  • Express
  • Sharp

Changelog

  • 22/8   Image get displayed after resizing it. Error Handling for resize and preview routes.

  • 22/8   Final Edits and added some comments for easier navigation in the code.

  • 21/8   Added Preview Route.

  • 20/8   EJS.

  • 19/8   Added middleware to Check if same image is resized with same dimensions before.

  • 18/8   Added middleware to check if image exists.

  • 17/8   Added middleware to write existing image names into CSV file and another for resized images.

  • 15/8   Configuration & Scripts.

  • 14/8   Configured Jasmine.

  • 13/8   Run the server on port 3000 http://localhost:3000.

  • 13/8   Initialize Project Structure.

Resources

(Back to Top)

image-processing-api's People

Contributors

uosyph avatar

Watchers

 avatar

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.