Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/vasily257/notebook

A multi-page notebook where you can add, delete and edit contacts.
https://github.com/vasily257/notebook

Last synced: about 1 month ago
JSON representation

A multi-page notebook where you can add, delete and edit contacts.

Awesome Lists containing this project

README

        

# Notebook
Этот проект — тестовое задание для вакансии «Верстальщик» компании ZemSoft ([ZEMS.PRO](https://zems.pro//)).

## Функциональность
Проект является записной книжкой, где можно добавлять, удалять и редактировать контакты.
В проекте есть 3 страницы:
- `home` — страница со всеми контактами
- `new` — страница добавления нового контакта
- `edit` — страница редактирования контакта

## Особенности
У проекта есть несколько особенностей:
1. Проект написан на `Vue 3`, используется `Composition API` и `script setup`.
2. Код по возможности соответствует [рекомендациям Vue](https://v3.ru.vuejs.org/ru/style-guide/).
3. Обращения к сторам и композициям вынесены на уровень страниц, чтобы сохранить дочерние компоненты чистыми.
4. Страница редактирования контакта использует query-параметр с ID контакта.
5. В проекте есть несколько библиотек:
- `Pinia` — для хранения контактов
- `nanoid` — для создания уникальных ID контактов
- `Yup` — для валидации формы
- `dayjs` — для работы с датами

## Технологический стек
`Vue` `SCSS` `TypeScript` `Nuxt`

## Ссылки
Опубликованый сайт: https://notebook-test.netlify.app/
ТЗ: https://docs.google.com/document/d/1gj0POILT6ofnL24eVdmduc8FO20dTfGAaqH-ffgWDds/
Макет: https://www.figma.com/file/ct6rzbxMtNxSYp4eTXEWv6/Frontend-test?type=design&node-id=0-1&mode=design&t=i9sNcEw7V0NMRwUE-0

## Использование
Чтобы склонировать проект, надо открыть нужную директорию и использовать команды:
**HTTPS**: `git clone https://github.com/Vasily257/notebook.git`

Чтобы запустить проект, нужно использовать команду `npm run dev` в папке с проектом.
Потом надо перейти по ссылке http://localhost:3000 в браузере, чтобы увидеть результат.

## Статус
Проект завершен, нет планов по доработке.