안녕하세요, 저는 웹개발 풀스택을 즐겨하는 심호성입니다. 먼저 저의 대한 소개를 한 후에, 제가 만든 프로젝트들을 소개하는 구성들을 가져보도록 하겠습니다.
저는 23기 웹프로그래밍과 심호성입니다. 주로 REACT.JS
와
Nodejs 프레임워크 Express
를 사용하여 프로젝트를 진행하였습니다.
사용가능한 언어로는 Python GO Javascript가 있습니다. 스타일시트 언어와 마크업 언어로는 CSS와 HTML을 사용합니다. 데이터베이스 언어로는 SQL과 NoSQL을 사용합니다.
Express.js
를 알기 전에는 Python으로 API개발을 해보았습니다,
Flask와
FastAPI를
사용하여 API를 개발하였고 NoSQL을 사용하였습니다.
그러다가 Express.js를 알게되어서 Node.js로 API를 개발하였고 SQL을 사용하였습니다. (SQL은 배우고있습니다)
이후 GO랭을 알게되었습니다. 빠른 병렬처리와 ORM라이브러리의 매력을 느끼게 되었고 투두리스트를 만들어보았습니다.
이때 배운것은 MVC 패턴과 ORM라이브러리를 알게 되었습니다. 추가로 보일러플레이트를 개발하는 계기가 되었습니다.
평소에 Github를 주로 사용하는 편입니다. 24년도에 들어와서 깃허브 사용을 매일매일 실천하는 중입니다.
또한 NPM에 라이브러리를
주로 올리고 있습니다.
간단한 데이터베이스 라이브러리와 서드파티 계정 정보 저장 라이브러리를 만들었습니다.
라이브러리를 만드는 이유는 평소에 제가 많이 사용하게 되는 구조와 기능을 복잡하지 않고 쉽게 사용하기 위해서 만들게 되었습니다.
이제 프로젝트들을 설명하도록 하겠습니다.
저의 프로젝트들은 분야가 여러가지가 있습니다. 프론트엔드와 백엔드와 파이썬을 사용합니다. 또한 GO언어를 사용하여 백엔드를 구축해 본 프로젝트가 있습니다
모든 프로젝트에 사진과 설명을 두었으나 만약에 한가지만 보셔야 한다면 Colearn을 봐주시면 감사하겠습니다.
또한 모든 프로젝트 헤더에는 링크가
있으니 참고 부탁드리겠습니다!
아래는 저의 핵심 프로젝트들입니다. 이 프로젝트들은 제가 가장 자신있는 프로젝트들입니다.
1. 풀스택
2. 보일러플레이트
3. 외주
4. 라이브러리
5. 인공지능
1. 디미고 다이어리
디미고에 처음 입학하고 개발해본 프로젝트입니다. 학급의 포토 갤러리를 만들어보고싶어서 월별로 정리해보았습니다. 모두가 사용할 수 있게 NginxProxyManager와
도메인을 연결하는 과정에 있습니다.
처음 코딩을 배우면 HTML로 만든 프로젝트를 배포하고싶어하는 기대는 누구나 합니다. 하지만 Vercel과 netlify도 사용할 수 있지만 간단하게 만들기 위해 github의 url구성을 참고하여
자신의 개인 웹사이트를 공유 할 수 있게 만들어본 서비스입니다. 지금은 타 학원에서 학생들을
대상으로 사용중입니다.
3. Colearn
디지털 미디어 고등학교를 지원할때 제출했던 프로젝트입니다 온라인저지 샌드박스 코드를 오픈소스로 사용하여 사용자가 파이썬 개념을배우고 저지 완경에서 바로 코드를 실행해볼 수 있게 만들어보았습니다.
위는 코런의 유튜브 링크입니다.
4. 투두리스트
GO언어를 처음 사용해보고 적용해본 프로젝트입니다. MVC구조를 명확히 알게 되었고 ORM라이브러리를 사용해보았습니다. 또한 JWT를 사용하여 인증을 구현해보았습니다.
Express-BoilerPlate는 Express.js를 사용하여 프로젝트를 시작할때 사용하는 보일러플레이트입니다. 저는 주로 MVC패턴을
사용하여 프로젝트를 진행하는데 이 보일러플레이트는 MVC패턴을 사용하여 프로젝트를 시작할 수 있습니다. JWT를 이용한 Auth관리와 간단한 미들웨어가 포함되어있습니다.
간단한 리액트 보일러플레이트입니다. Redux를 사용해본적은 없고 Zustand를
사용해보았습니다. 컴포넌트의 디자인은 Styled-Component
를 사용하였습니다.
학원의 요청을 받아 Lecture management system (LMS)를 개발한 경험이 있습니다. 비공식 프로젝트라 공개는 어렵지만 프론트엔드를 담당하게 되었고 REACT.JS
를 이용하였습니다.1달반 개발로 개발보수 75만원을 받을 수 있었습니다. (부분 진행중)
디스코드봇 작업을 처리해본적이 있습니다. 중학교 1학년때 discord.py를 사용했습니다.
1. ForgeBase
데이터베이스 라이브러리로 SQL기반 데이터베이스 라이브러리입니다. 간단한 메서드를 이용해서 데이터베이스를 사용할 수 있습니다. Forgebase의 공식 문서 링크입니다
2. Pygame.js
파이썬의 파이게임 라이브러리를 js버전으로 만들어보았습니다. 웹 기반이고 canvas api를 사용하여 만들었습니다.
3. Zephy
Zephy는 파이썬으로 웹앱을 만들 수 있는 빌더입니다. Zephy의 공식 문서는 업지만 Zephy를 이용하여 파이썬 메서드를 이용해 html에 js를 삽입하는 구조를 통해 만들었습니다.
4. AuthForge
AuthForge는 구글의 인하우스 권한 관리 시스템 Zanzibar
에 영감을 받아 중앙에서 유저의 정보를 관리하는것이 아닌 라이브러리의 의존도를 높혔습니다. 유저간의 관리가 쉬운 장점이 있습니다.
1. 베네듀 오토로그인
베네듀의 세션은 짧습니다. 그래서 매번 로그인을 할때 비밀번호를 눌러야하는 불편함이 있습니다. 그래서 자동으로 로그인을 해주는 프로그램을 만들었습니다.
2. CloudBase
Cloudbase는 정말 쉽게 간단한 데이터베이스를 RESTAPI 형태로 사용할 수 있습니다. Firebase의 realtime DB와 비슷한 구조를 가지고있고 누구나 쉽게 타 플랫폼을 사용하지 않고 localhost와의 API통신으로 데이터베이스 CRUD를 할 수 있습니다. Cloudbase 다운로드 페이지입니다.
중학교 생활 초기에 제작했던 프로젝트들입니다. 너무 초기에 제작하여 기억은 안나지만 의미있어 넣어봅니다.
1. 마우스 컨트롤
OpenCV를 이용한 마우스 컨트롤 프로젝트입니다. 손가락을 인식하여 화면에 마우스를 왔다갔다 할 수있고 검지의 제스쳐로 스크롤과 클릭이 가능합니다. 객체인식 알고리즘을 직접 구현한것은 아니고 구글의 mediapipe를
사용하였습니다.
2. 가위바위보 인식
프로젝트는 사용자의 손을 인식하여 가위 바위 보 3가지 동작을 인식하여 글자로 출력하는 프로젝트입니다. 마찬가지로 OpenCV를 사용하였고 또한 mediapipe
를 사용하였습니다.
3. 타자교정 프로그램
OPENCV를 이용한 첫번째 보고서였습니다. 보고서의 구조를 알게 되었던 경험이었고 또한 사용자의 손가락이 정확히 키보드 위치에 맞는지 까지 확인해주는 엄격한 타자 프로그램이었습니다. 마찬가지로 mediapipe
를 사용하였습니다.