ArtClub website is the plattform where users can apply memberships for the club and search artists and artworks. Users can also find links to exhibitions and current painting weather from the link page. Members can see art clubs events and they are able to create and update their own MyPage. On Mypage members can write short indroduction about themselves and create their own picturegallery with 10 pictures for everybody to see. All pictures are also shown on the maingallery page. (Users can vote artworks by like button and see ten most liked paintings.)( Main page features every month some of the artwoks.) Admin can list registered users and approve their memberships. Admin can also create events for members to see.
Frontend: React, JSX(Javascript)
Backend: NodeJS
Database: MongoDB, MongoDB Atlas
Server: Heroku
Eslint
Browser and server connections:
Axios
npm install axios --save
dev server: JSON server
npm install json-server --save-dev
State management:
Redux-thunk
npm install --save redux-thunk
Redux:
npm install --save react-redux
Navigation:
React router
npm install --save react-router-dom
Tyylit:
react-bootsrap
npm install --save react-bootstrap
Tets:
jest-dom
npm install --save-dev react-testing-library jest-dom
enzyme
npm install --save-dev enzyme enzyme-adapter-react-16
End to end testing:
cypress
npm install --save-dev cypress
Tools:
Redux DevTools
npm install --save redux-devtools-extension
Date picker:
React date picker
npm install react-datepicker --save
Read more:
npm install --save read-more-react
read-more-react
Framework for Node.js
Express
npm install express --save
Automatic restart of application after changes'.
Nodemon
npm install --save-dev nodemon
Middleware which allows request from other origins:
Cors
npm install cors --save
Jsonwebtoken-kirjasto, jonka avulla koodi pystyy generoimaan JSON web token -muotoisia tokeneja.
npm install jsonwebtoken --save
Body-parser
npm install body-parser
Multer for image data handling
Database:
Mongoose
npm install mongoose --save
Enviromental variables:loads environment variables from a .env file into process.env
Dotenv
npm install dotenv --save
Passwordhashing: bcrypt
Validating unique values:
mongoose-unique-validator
npm install --save mongoose-unique-validator
Software Requirements Specification
You can run these commands in the project directory
npm start
Runs the application in the development mode. You can use the application in a browser by opening http://localhost:3000 The page will reloaded when the code is edited.
npm build
Builds the application for production
npm test
Runs tests for the application
npm run test-coverage
Runs the tests and a report for test coverage
npm run lint
Checks the code for style deviations
npm run watch
Runs the application in the development mode. Uses a local development PostGresql database.
npm start
Runs the application in the production mode.
npm test
Pushing application to Heroku server after making new build and git committing
git push heroku master