copyright (c) 2022 by dario Passariello
Hi, this is Dario!. This is the demo about beer labels. Everything there is invented just to show how I build everything and I came to share all the information. I use these technologies:
- Docker api server on node machine port 9000.
- Docker Client React on node machine on port 3000
If you want to make a look in a live version: https://superdemo.picla.net/
If you need to save git log to file use git --no-pager log > git.txt
Please run docker-compose.yml first. After that you can run client.
If you use windows you can mode to project folder and run docker.bat
# NPM INSTALL
# drive:/SuperDemo/client/
npm install --prod ( --force if necessary )From shell move to "/client/server" and execute "npm install --prod" if necessary
# DO NOT FORGET
# drive:/SuperDemo/client/server/
npm install --prodI want to make it automatic during Docker installation ... it's a TODO
From Docker you can run superDemo.client on the browser and enjoy my fatigue. Inside /client/data you have config options.
- Docker setup in all parts
- React version with webpack installed
- API punkapi full support
- UI / UX is almost done
- light and dark UI can be switched
- Theme is drived by OS system
- API came from punkAPI to our API and it's cached using dpHelper*
- Rating system works and store all vote to our db
- Search works
- Pagination works
- images and vectors works properly
- Modals are controlled by stModal*
- It's possible to use css, sass, scss
- It's possible to use all kinds of image formats.
- All data are global and state and store are stored using dpHelper*
- Api it's run on node environment
- x-user is used to validate votes.
- Same email can't vote more time same item
- Voting is in realtime.
- Everything is SPA
- All components should be shared between different pages
NPM dpHelper are developed by Dario Passariello. dpHelper is a collection of global function and memory state, store management. Layerpro are an alert, confirm replacement. Copyright by Dario Passariello
Copyright (c) 2022 Dario Passariello
You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation. No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.
.
├───.vscode
├───server
│ ├───bin
│ ├───data
│ ├───public
│ │ └───stylesheets
│ ├───routes
│ └───views
├───client
│ ├───public
│ │ └───assets
│ │ ├───fonts
│ │ ├───icons
│ │ ├───images
│ │ ├───loaders
│ │ ├───logos
│ │ ├───themes
│ │ └───vectors
│ ├───server
│ ├───src
│ │ ├───components
│ │ │ ├───general
│ │ │ │ ├───castVote
│ │ │ │ ├───loaders
│ │ │ │ │ ├───circular
│ │ │ │ │ │ ├───progress
│ │ │ │ │ │ └───progressWithLabel
│ │ │ │ │ └───horizontal
│ │ │ │ │ ├───progress
│ │ │ │ │ └───save
│ │ │ │ ├───lock
│ │ │ │ ├───music
│ │ │ │ ├───social
│ │ │ │ └───uiSelector
│ │ │ └───shared
│ │ │ ├───audio
│ │ │ ├───code
│ │ │ ├───fieldset
│ │ │ ├───input-checkbox
│ │ │ ├───input-email
│ │ │ ├───input-password
│ │ │ ├───input-radio
│ │ │ ├───input-reset
│ │ │ ├───input-search
│ │ │ ├───input-submit
│ │ │ ├───input-switch
│ │ │ ├───input-text
│ │ │ ├───legend
│ │ │ ├───textarea
│ │ │ └───video
│ │ ├───config
│ │ ├───data
│ │ ├───layout
│ │ │ ├───aside
│ │ │ ├───footer
│ │ │ ├───header
│ │ │ ├───main
│ │ │ └───nav
│ │ ├───pages
│ │ │ ├───about
│ │ │ ├───help
│ │ │ ├───home
│ │ │ ├───notFound
│ │ │ └───vote
│ │ ├───scripts
│ │ ├───styles
│ │ │ ├───responsive
│ │ │ └───scss
│ │ └───types
│ └───tests
└───screenShot
``
---------------------------------------
Dario Passariello
<[email protected]>
