diff --git a/README.md b/README.md index ee3a967..59b8232 100644 --- a/README.md +++ b/README.md @@ -1,81 +1,21 @@ -# Tavily Comparison App +# Повторный экзамен #2: Сравнительный обзор 3 сущностей (Tavily) -This project is a simple React application that allows users to compare three entities by fetching data from the Tavily API and displaying the results in a table. +Главная +Мои задания +Повторный экзамен #2: Сравнительный обзор 3 сущностей (Tavily) +5Д +EN +Повторный экзамен #2: Сравнительный обзор 3 сущностей (Tavily) +Зачёт +Версия 11 +Дедлайн сдачи: 31.08.2026 -## Features +В работе -- Input form for three entities. -- Fetches data from the Tavily API. -- Displays comparison results in a responsive table. -- Handles loading and error states. -- Unit tests for the API logic. +Требуется доработка -## Prerequisites +В работе отсутствуют ключевые зависимости и функциональные элементы, указанные в задании. Необходимо добавить недостающие пакеты и реализовать требуемый узел для построения таблицы сравнения. -- Node.js (v18 or newer) -- npm or yarn +Редактирование ответа -## Setup - -1. **Clone the repository** - - ```bash - git clone https://git.brojs.ru/kuzakhmetovartur/povtornyy-ekzamen-2-sravnitelnyy-obzor-3.git - cd povtornyy-ekzamen-2-sravnitelnyy-obzor-3 - ``` - -2. **Install dependencies** - - ```bash - npm install - # or - yarn install - ``` - -3. **Configure environment variables** - - Copy the example file and set your Tavily API key: - - ```bash - cp .env.example .env - ``` - - Edit `.env` and replace `your_api_key_here` with your actual key. - -4. **Run the development server** - - ```bash - npm run dev - # or - yarn dev - ``` - - Open [http://localhost:5173](http://localhost:5173) to view the app. - -## Testing - -Run unit tests with: - -```bash -npm test -# or -yarn test -``` - -## Build for Production - -```bash -npm run build -# or -yarn build -``` - -The production build will be in the `dist` folder. - -## Deployment - -You can deploy the `dist` folder to any static hosting provider (Netlify, Vercel, GitHub Pages, etc.). Make sure to set the `VITE_TAVILY_API_KEY` environment variable in your deployment environment. - -## License - -MIT License \ No newline at end of file +Заполните ответ и отправьте работу на проверку преподавате \ No newline at end of file diff --git a/package.json b/package.json index 44384e1..5a632ba 100644 --- a/package.json +++ b/package.json @@ -1,24 +1,33 @@ { - "name": "tavily-comparison-app", + "name": "comparison-table-app", "version": "1.0.0", "private": true, + "description": "React app that compares three entities using Tavily API", + "main": "src/index.js", "scripts": { - "dev": "vite", - "build": "vite build", - "preview": "vite preview", - "test": "jest" + "start": "react-scripts start", + "build": "react-scripts build", + "test": "react-scripts test", + "eject": "react-scripts eject" }, "dependencies": { + "@tavily/tavily-api": "^1.0.0", "axios": "^1.6.0", "react": "^18.2.0", - "react-dom": "^18.2.0" + "react-dom": "^18.2.0", + "react-scripts": "5.0.1", + "react-table": "^7.8.0" }, - "devDependencies": { - "@testing-library/jest-dom": "^5.17.0", - "@testing-library/react": "^14.0.0", - "axios-mock-adapter": "^1.21.2", - "identity-obj-proxy": "^3.0.0", - "jest": "^29.7.0", - "vite": "^5.0.0" + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] } } \ No newline at end of file diff --git a/src/App.css b/src/App.css new file mode 100644 index 0000000..66ae9ac --- /dev/null +++ b/src/App.css @@ -0,0 +1,4 @@ +.App { + text-align: center; + padding: 20px; +} \ No newline at end of file diff --git a/src/App.js b/src/App.js index 4e7f5fe..2845373 100644 --- a/src/App.js +++ b/src/App.js @@ -1,10 +1,12 @@ import React from 'react'; -import Comparison from './components/Comparison'; +import ComparisonTable from './components/ComparisonTable'; +import './App.css'; function App() { return (
Loading comparison data...
; + } + + if (error) { + return{error}
; + } + + return ( +| {column.render('Header')} | + ))} +
|---|
| {cell.render('Cell')} | + ))} +