diff --git a/.eslintignore b/.eslintignore
index 9c30e8e44376c66e72229082fd69fd971524aa06..465054d8cb71842d55437e2fbdab15b12b3e0558 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -4,4 +4,5 @@
 
 # Auto generated by React
 serviceWorker.*
-setupTests.*
\ No newline at end of file
+setupTests.*
+setupProxy.*
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index fa2b8b6f56e084cbc2819d3c6385790ab2b843cc..1809a4e2106aef7b676b8dd119da39e14f77a134 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -2940,6 +2940,14 @@
         "hoist-non-react-statics": "^3.3.0"
       }
     },
+    "@types/http-proxy": {
+      "version": "1.17.4",
+      "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.4.tgz",
+      "integrity": "sha512-IrSHl2u6AWXduUaDLqYpt45tLVCtYv7o4Z0s1KghBCDgIIS9oW5K1H8mZG/A2CfeLdEa7rTd1ACOiHBc1EMT2Q==",
+      "requires": {
+        "@types/node": "*"
+      }
+    },
     "@types/istanbul-lib-coverage": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz",
@@ -8563,14 +8571,55 @@
       }
     },
     "http-proxy-middleware": {
-      "version": "0.19.1",
-      "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
-      "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.0.5.tgz",
+      "integrity": "sha512-CKzML7u4RdGob8wuKI//H8Ein6wNTEQR7yjVEzPbhBLGdOfkfvgTnp2HLnniKBDP9QW4eG10/724iTWLBeER3g==",
       "requires": {
-        "http-proxy": "^1.17.0",
-        "is-glob": "^4.0.0",
-        "lodash": "^4.17.11",
-        "micromatch": "^3.1.10"
+        "@types/http-proxy": "^1.17.4",
+        "http-proxy": "^1.18.1",
+        "is-glob": "^4.0.1",
+        "lodash": "^4.17.19",
+        "micromatch": "^4.0.2"
+      },
+      "dependencies": {
+        "braces": {
+          "version": "3.0.2",
+          "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
+          "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+          "requires": {
+            "fill-range": "^7.0.1"
+          }
+        },
+        "fill-range": {
+          "version": "7.0.1",
+          "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
+          "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+          "requires": {
+            "to-regex-range": "^5.0.1"
+          }
+        },
+        "is-number": {
+          "version": "7.0.0",
+          "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+          "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
+        },
+        "micromatch": {
+          "version": "4.0.2",
+          "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz",
+          "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==",
+          "requires": {
+            "braces": "^3.0.1",
+            "picomatch": "^2.0.5"
+          }
+        },
+        "to-regex-range": {
+          "version": "5.0.1",
+          "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+          "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+          "requires": {
+            "is-number": "^7.0.0"
+          }
+        }
       }
     },
     "http-signature": {
@@ -16914,6 +16963,17 @@
             }
           }
         },
+        "http-proxy-middleware": {
+          "version": "0.19.1",
+          "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
+          "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
+          "requires": {
+            "http-proxy": "^1.17.0",
+            "is-glob": "^4.0.0",
+            "lodash": "^4.17.11",
+            "micromatch": "^3.1.10"
+          }
+        },
         "is-absolute-url": {
           "version": "3.0.3",
           "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz",
diff --git a/package.json b/package.json
index 2204cce9fba948b65c7b531ee9c3bb929f15f717..337d77d817d78cf3920f2b1503b53dbf8d31c583 100644
--- a/package.json
+++ b/package.json
@@ -47,6 +47,7 @@
   "dependencies": {
     "@material-ui/core": "^4.11.0",
     "axios": "^0.20.0",
+    "http-proxy-middleware": "^1.0.5",
     "react": "^16.13.1",
     "react-dom": "^16.13.1",
     "react-hook-form": "^6.5.3",
@@ -82,6 +83,5 @@
     "prettier-plugin-organize-imports": "^1.1.1",
     "prettier-plugin-packagejson": "^2.2.5",
     "prettier-plugin-sh": "^0.5.0"
-  },
-  "proxy": "http://localhost:8000"
+  }
 }
diff --git a/src/core/App.tsx b/src/core/App.tsx
index dfb1d8d6f70452bd905829aa157d751f5e7429bb..f77574f07bfc0c9e1ecd48ba9a8dcebbb27b78d9 100644
--- a/src/core/App.tsx
+++ b/src/core/App.tsx
@@ -1,7 +1,7 @@
 import React, { useEffect } from 'react';
 import { BrowserRouter as Router } from 'react-router-dom';
 import styled from 'styled-components';
-import useGetNewsList from '../hooks/useGetNewsList';
+import useAddNews from '../hooks/useAddNews';
 import Footer from './components/Footer';
 import Header from './components/Header';
 import MainRouting from './components/MainRouting';
@@ -18,15 +18,15 @@ const MainContent = styled.div`
 `;
 
 function App() {
-  const [response, getNewsList] = useGetNewsList();
+  const [response, addNews] = useAddNews();
 
   useEffect(() => {
-    getNewsList();
-  }, [getNewsList]);
+    addNews({ body: { title: 'Testing', text: 'Test Test TEST' } });
+  }, [addNews]);
 
   useEffect(() => {
     if (response.data) {
-      console.log(response.data[0].text);
+      console.log(response.data.text);
     }
   }, [response.data]);
 
diff --git a/src/hooks/types.ts b/src/hooks/types.ts
index 4eafda4a634214a954938d97ebafbfeb230a8e3f..d639a344b70e94866b43d4923f40304dcbb6421c 100644
--- a/src/hooks/types.ts
+++ b/src/hooks/types.ts
@@ -17,6 +17,7 @@ export interface RequestParams {
   params?: any;
   args?: any;
 }
+
 export type ApiRequest<T> = (params: RequestParams) => AxiosPromise<T>;
 
 export type Refetch = (params?: RequestParams) => void;
diff --git a/src/hooks/useAddNews.ts b/src/hooks/useAddNews.ts
new file mode 100644
index 0000000000000000000000000000000000000000..0afeea1a19ca924ff4bee70407b2c9e92f41a9ff
--- /dev/null
+++ b/src/hooks/useAddNews.ts
@@ -0,0 +1,12 @@
+import { INews } from './types';
+import useRequest from './useRequest';
+import userRestQueries from './useRestQueries';
+
+const useAddNews = () => {
+  const { post } = userRestQueries();
+  const request = post<INews>('/api/v1/news');
+
+  return useRequest<INews>({ request });
+};
+
+export default useAddNews;
diff --git a/src/hooks/useRequest.ts b/src/hooks/useRequest.ts
index 04963c44cb754f94d83b6ade0496ceb55260e6e5..6e41e58f6add946cf3015c953537ab50a9879353 100644
--- a/src/hooks/useRequest.ts
+++ b/src/hooks/useRequest.ts
@@ -1,16 +1,12 @@
 import { useCallback, useEffect, useState } from 'react';
 import { Refetch, RequestArgs, ResponseData } from './types';
 
-function useRequest<T = any>({
-  request,
-  initialData,
-  initialParams,
-}: RequestArgs<T>): [ResponseData<T>, Refetch] {
+function useRequest<T = any>({ request, initialData }: RequestArgs<T>): [ResponseData<T>, Refetch] {
   const [data, setData] = useState(initialData);
   const [isLoading, setIsLoading] = useState(false);
   const [isError, setIsError] = useState(false);
   const [fetching, setFetching] = useState(false);
-  const [requestParams, setRequestParams] = useState(initialParams ?? {});
+  const [requestParams, setRequestParams] = useState({});
 
   const refetch = useCallback((newParams?) => {
     setRequestParams(newParams ?? {});
diff --git a/src/setupProxy.js b/src/setupProxy.js
new file mode 100644
index 0000000000000000000000000000000000000000..a4b1c75f070cdcf2248b8bdef529c9b826bc4cb3
--- /dev/null
+++ b/src/setupProxy.js
@@ -0,0 +1,11 @@
+const { createProxyMiddleware } = require('http-proxy-middleware');
+
+module.exports = function (app) {
+  app.use(
+    '/api/v1',
+    createProxyMiddleware({
+      target: 'http://localhost:8000',
+      changeOrigin: true,
+    }),
+  );
+};