🚀 View Live | Images by Unsplash
Mesto is my first Javascript application built for educational purposes while studying at Practicum by Yandex.
Users can change the name, profile description and profile image, as well as publish their own cards with images of places. Unnecessary cards can always be deleted, and the most beautiful ones can be liked.
- Like others' cards and upload your own
- Change account data: username, description and profile image
- Delete cards you don't like (only your own)
- Fullscreen mode: open any card in full-screen mode by clicking on the image.
- Server storage: cards' and users' data is stored on the REST-API server and won’t be deleted on page refresh.
- Form live validation: errors will alert you if you enter something wrong in the input field, and will prohibit the form submitting.
- Adaptive and responsive: The layout is displayed properly on any screens: from mobile to widescreen.
- Error handling: If there are problems with the server, the corresponding errors are displayed in the console.
- Confirmation popups: confirm the card deletion to avoid accidents
-
JavaScript (ES6)
- Asynchronous programming: Callbacks, Promises, fetch and Async / Await
- Object-oriented programming: using classes and following the basic concepts: encapsulation, abstraction, inheritance and polymorphism
-
HTML & CSS
- Semantic and valid layout
- Grid and Flexbox
- Adaptive and responsive
- BEM (BEM Nested)
-
Git
- Migrate to Webpack 5
- Add Eslint
- Add English version
-
Clone the repo
git clone https://github.com/GeoGeorgeous/russian-travel.git
-
Install NPM packages
npm install
-
Run NPM script
Run app in development mode:
npm run dev
Start a production build:
npm run build
App requests data from https://mesto.nomoreparties.co/ REST API