사내 admin 에서 사내 이슈 관리 및 보고 프로세스를 줄이기 위한 개발을 맡게 됐다.
스택은 Flask와 React.
Flask는 처음 써보고 파이썬은 대강 읽을 수만 있는 정도여서 난감했는데 일부 기능은 이미 구현된 api 코드를 수정하여 구현할 수 있는 정도여서 다행히 구현하였으나...
기획을 수정하게 되어 추가로 코드를 만지게 되어 걱정이 많다.
구현 중에 난관이 된 부분은 아래와 같다.
1. client 에 사용되는 api를 admin에서 갖다 써야 한다.
- client api 를 로컬로 띄우려는데 패키지 설치 과정에서 문제가 생김
- 리눅스 PC를 새로 사용하여 환경을 구성하려던 중 admin api에 client api 와 연결되는 터널을 만들어서 request를 중계 하는 방식으로 구현 하면 어떻겠냐는 조언을 들었다. (정말 감사합니다 팀장님)
2. 서버에 저장된 이미지를 가져오고 그 이미지 위로 드래그 하였을 때 해당 드래그 구간의 좌표를 가져와야 한다.
- 라이브러리를 사용하거나 직접 구현해야 할 것 같은데 canvas 기능을 쓰게 될 것 같다. 아직 canvas 기능을 사용해 본 적이 없어서 걱정이 앞서지만 이번 기회에 공부할 수 있을 것으로 생각된다.
3. git add, git commit, git push 기능을 git lab api를 이용하여 구현하여야 한다.
- git lab에 add, commit, push 하는 기능을 api를 이용하여 버튼 클릭 시 수행할 수 있도록 구현해야 한다. 찾아보니 git hub도 마찬가지고 git lab 또한 해당 기능들을 사용할 수 있는 api들을 제공한다고 한다. 여러 질문글을 찾아보았다.
- 로컬에 이미 저장되어있는 파일이 아닌 서버에 저장되어있는 이미지 파일과 사용자가 입력한 텍스트+2번 동작을 통해 가져온 좌표를 txt 파일로 변환하여 add, commit, push 하여야 한다.
이 부분이 걱정이 많은데 로컬에 이미지, txt 파일을 저장하는 것이 아닌 서버에 저장 후 git lab api를 호출하는 방식으로 구현해야 할 것 같다.
4. 해당 이미지에 대해 간략하게 설명을 적는 비고란을 구현해야 한다.
- db에 저장하지 않고 이 이슈값들을 관리하고 싶은데 state로 관리하면 해당 화면이 너무 무거워질 것 같다.
아직 기획을 마치지 않았고 구현에 시간이 걸리겠지만 필요한 기능들 부터 차근차근 공부해보려 한다.
가장 먼저 특정 이미지 위에 드래그를 통해 네모를 그리면 좌표 입력 란에 해당 좌표가 기재되는 화면을 공부해보려 한다.