본문 바로가기

전체 글343

[Mac] Zsh Configuration 이번 포스팅에서는 Mac에서 zsh을 설정하는 방법을 살펴보겠습니다.InstallationMac에서는 homebrew를 이용하여 설치를 하는 게 보편적이죠.다음 명령어로 설치를 합니다.$ brew install zsh개인적으로 zsh을 이 위치까지 올려준 건 모두 oh-my-zsh 덕분이라고 생각합니다.oh-my-posh 같은 아류까지 만들어질 정도니까요.당연히 설치를 해줍니다.$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"Plugins이제 유용한 플러그인 몇 가지를 추가해 줍니다.zsh-syntax-highlighting명령어등을 인식해서 색깔을 입혀주는 플러그인 입니다.다음 .. 2024. 12. 25.
[MacOSX] M4 맥미니 초기 설정 맥은 매번 살 때마다 그간의 변화를 고려하여 마이그레이션 하지 않고 새로 설정하고 있어요. ㅎㅎ참고해 보시라고 공유해 봅니다.날짜나 시간 포맷 같이 개인 취향적인 건 각자 설정하면 되니 제외할게요.전 개발 공부가 위주라서 그 외의 다른 건 거의 안하고 있다보니 그 점은 감안해주세요.또한, 영어를 기본 언어로 사용하고 있어요.예전엔 설정도 막 파고 들어서 확장도 직접 만들면서 했는데, 지금은 시간이 워낙 부족해서 그냥 필요한 만큼씩만 찾아서 적용하는 수준이긴 하네요.System Settings전 간단히 다음과 같은 정도를 해줍니다.방화벽 켜기 : 네트워크Dock 자동 숨김 : 데스크탑 및 Dock -> 자동으로 Dock 가리기와 보기입력 소스 변경 키를 우측 ALT로 : 키보드 -> 키보드 단축키마우스 스.. 2024. 12. 25.
[Flutter] Using Firebase Remote Config OpenAPI 등을 사용할 때, 노출이 되면 안되는 key 값들을 사용하게 되죠.따라서, 이 값을 안전하게 할 수 있도록 다양한 방법을 사용합니다.이번엔 firebase에서 제공하는 remote config를 사용하는 방법을 알아보겠습니다.Create Project먼저, firebase에서 프로젝트를 생성합니다.프로젝트 만들기를 누릅니다.다음으로 사용할 이름을 입력하고 계속 버튼을 누릅니다.이후 설정은 원하는대로 해주세요.일단은 기본으로 하셔도 나중에 다 바꿀 수 있을거에요.전 애널리틱스 사용하는 것으로 설정해서 계정 연동까지 해줬어요.마지막으로 프로젝트 만들기 버튼을 누르면 끝입니다.Integrate with Firebase이제 flutter application과 firebase를 연결해 줍니다.Fl.. 2024. 10. 19.
[Python] FFI with Rust 이번 포스팅에서는 Rust로 작성한 코드를 Python에서 사용하는 방법에 대해 설명하겠습니다.Install maturin/PyO3먼저, python 가상 환경을 만들고 rust로작성한 코드를 python package로 빌드할 수 있는 tool을 설치해 줍니다.$ pip install maturinCreate Project다음으로 설치한 tool을 사용하여 프로젝트를 생성합니다.다음 명령을 입력하면 PyO3를 빌드 시스템으로 하는 프로젝트를 생성합니다. $ maturin init -b pyo3Implement Library Crate이제 원하는 rust 코드를 작성합니다.use pyo3::prelude::*;use std::fs::File;use std::io::{Read};#[pyfunction]fn.. 2024. 7. 22.
[Flet] Getting Started Flet은 multi-platform application을 만들 수 있게 도와주는 프레임워크입니다.파이썬을 사용하여 flutter의 UI를 구축하도록 도와줍니다.이번 포스팅에서는 간단하게 사용하는 방법에 대해 살펴보겠습니다.Prerequisite기본적으로 flutter를 사용하기 때문에 flutter SDK가 설치되어 있어야 하며, poetry도 사용할 계획이므로 이것도 설치해 주시면 좋습니다.poetry 대신 pip를 사용해서 직접 프로젝트 구성을 하셔도 괜찮습니다.전 파이썬은 pyenv를 사용 중이고, flutter는 fvm을 사용하는 중이라 몇 가지 설정을 더 해주긴 했어요.Create Project여러 방법이 있지만, 개인적으로 선호하는 poetry를 이용하여 프로젝트를 만들어 보겠습니다.먼저,.. 2024. 7. 12.
[Mermaid] ChatGPT를 이용하여 Mermaid 작성하기 Mermaid는 markdown 문법을 이용하여 간단하고 직관적으로 다이어그램을 생성할 수 있는 오픈 소스 도구이죠.텍스트 기반이라 관리도 쉽고 협업도 용이합니다.문법이 간편하고 쉽다곤 하지만 뭔가를 또 배우고 익히는 수고가 필요했는데, 이젠 LLM의 세상이죠. ㅎㅎChatGPT, Gemini, GitHub Copilot등의 AI 서비스를 사용해서 간편하게 작성을 할 수 있게 되었습니다.Flow chart, gantt chart, pie chart, sequence diagram, class diagram, state diagram, entity-relationship diagram, data flow diagram 등 다양한 결과물을 만들어낼 수 있습니다.사용해 보기원하는 입력을 제공한 후, merma.. 2024. 6. 7.
[Typer] Python으로 CLI App 만들기 Typer는 FastAPI를 만든 곳에서 만든 CLI app을 만들수 있도록 도와주는 라이브러리입니다. FastAPI도 사용성이 너무 좋았었는데, Typer도 역시 너무 맘에 들어서 이렇게 소개를 드립니다. Installation 먼저 필요한 패키지를 설치합니다. $ pip install "typer[all]" Rich라는 패키지도 설치가 되는 데 이것도 아주 재밌는 패키지라서 app 만들 때 종종 사용하려고 합니다. ㅎㅎ Create a First Example 간단히 사용 예제를 보여드릴게요. import typer def main(name: str): print(f"Hello {name}") if __name__ == "__main__": typer.run(main) argparse 같은 내장 패키.. 2024. 3. 30.
[Python] PyPI에 패키지 배포하기 이번 포스팅에서는 직접 만든 패키지를 PyPI에 배포하는 방법에 대해 살펴보겠습니다. 여기서 소개드린 방법 외로도 다양하게 가능하지만, 좀 더 쉽고 간단하게 하실 수 있도록 한 가지 방법만 소개시켜드리는 것이니 유일한 방법으로 오해하지 않으시길 바랍니다. Create Project 먼저, 배포할 패키지 내용을 작성해 보겠습니다. 예제로 단순하게 인사말을 출력하는 패키지를 만들어 볼게요. root/ └── src/ └── hpractice/ ├── __init__.py └── main.py 나중에 프로젝트가 확장될 것을 고려하여 미리 이런 구조를 잡았습니다. 간단한 프로젝트라면 src 폴더 하위에 코드를 넣어도 되지만, 나중에 확장되어 유닛테스트 등이 생길 것을 고려하여 미리 폴더를 한 겹 더 감쌌습니다... 2024. 3. 16.
[Next.js] Layout으로 공통 화면 구성하기 Web app을 개발하다보면 네비게이션바나 footer와 같이 공통적으로 사용할 컴포넌트가 필요한 경우가 자주 발생합니다. 이것을 매번 일일이 해주려면 여간 귀찮은 일이 아니죠. Next.js에서는 layout이라는 기능으로 이것을 지원하고 있습니다. Create Project create-next-app을 사용해서 프로젝트를 생성합니다. 그리고 기본 페이지 구성을 위해 다음과 같이 넣어줍니다. // app/page.tsx export default function Home() { return ( Home ); } // app/menu/[id]/page.tsx export default function Menu({ params }: { params: { id: string } }) { return ( M.. 2024. 2. 17.