Skip to content

monkeysees/unslash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Unslash

Solution for a challenge from Devchallenges.io.

Table of Contents

Overview

This is a fullstack app which features a private image repository inspired by Unsplash.

It is built with Express on the server side and Vue 3 on the frontend, using Typescript on both ends. Uploaded files are stored on server's filesystem with info about them saved to LevelDB.

Building this app helped me to better understand how file uploading works as well as get a glimpse of what fullstack development process looks like.

Built With

Features

  • Add your images by uploading them or providing URL
  • Delete unwanted images
  • Search uploaded images by label

Please be aware that app is currently hosted for demonstration purposes only. This means that there are certain limitations:

  1. images upload size is limited by 15 MB
  2. session lifespan is limited by 2 days after which user data will be restored to the initial state, i.e., all uploaded images will be deleted.

If you wish to hos the app yourself these settings can be customized by setting appropriate environment variables.

How To Use

To clone and run this application on your local machine, you'll need Git and Node.js (which comes with npm) installed on your computer. Keep in mind that environment variables have to be provided in .env.development.local (see .env.example) for both client and server.

From your command line:

# Create main directory for project and enter it
$ mkdir unslash && cd unslash

# Clone client & server repositories
# $ git clone 
# https://gitlab.com/islambeg-frontend-projects/fullstack/unslash/client && 
# git clone 
# https://gitlab.com/islambeg-frontend-projects/fullstack/unslash/server

# Install client & server dependencies
$ npm --prefix ./client install && npm --prefix ./server install

# Start server in dev mode
$ npm --prefix ./server run dev

# Start client in dev mode
$ npm --prefix ./client run dev

Acknowledgements

Contact

About

Demo project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published