Giter Site home page Giter Site logo

releasin's Introduction

Releasin Two days Technical challenge

a small service for product management (frontend and a small supporting backend)

Overview

the project is written using typescript (backend and frontend) below i will list some of the library i used :

Backend

  • Express
  • Moongose (ORM for MongoDb)
  • pino (for loggin)

Frontend

  • Tailwind CSS
  • axios
  • easy peasy (state mangment library built on top of redux)
  • React
  • React Router

Demo

Live Demo : https://releasin-s4obu.ondigitalocean.app/

the frontend and backend are both hosted on digitalocean.

Screenshots

Alt text

Alt text

Alt text

Alt text

Available Scripts

you need to setup the mongodb with you own database connection string ./server/.env (PS: i will deliberately leave mine there just for simplicity purposes)

before you run the react app, you need to spin of the server:

cd ./server

then

npm i to install dependencies

after that you should be ready to go

npm run dev (PS: it will run on port 1300 you can change that on ./server/.env)

In the project directory, you can now run:

npm i && npm start

Runs the app in the development mode. Open http://localhost:3000 to view it in the browser.

Note

i already made some place holder queries you can run them from

./mongodb/placeholder.mongodb

Todo

this project took me one day to finish there is lot of stuff i need to tackle i will list some of them below :

  • Delete Selection
  • Bulk Delete
  • Add Validation on Input
  • Migrate to PostgreSQL since it will be better with relational data.
  • add caching mechanism
  • enhance Security.
  • better design.

Answer for the third part of the challenge

modeling the data this way can't be big a of problem on small scale,but with time it will become nightmare to manage, one of the reasons is beacause there is lot of redundancy, which will end up on long round trips time (RTT).I would also suggest going for horizontal modeling better than vertical modeling especially if it were designed for mobile.

releasin's People

Contributors

aimen08 avatar

Stargazers

Roman avatar pascall de creator 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.