Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/argon1025/tilog-server

TILog-server
https://github.com/argon1025/tilog-server

docker docker-compose nestjs nestjs-backend nodejs redis typescript

Last synced: 28 days ago
JSON representation

TILog-server

Awesome Lists containing this project

README

        

> 현재 [**이곳**](https://github.com/TIL-Log-lab/Tilog-server-node-v2)에서 TILog-v2 마이그레이션이 진행중입니다.


Logo

TILog server


blog platform for developers, TILog.

Frontend project is at another Repo

개발자를 위한 블로그 플랫폼 TILog 입니다.




View Service
·
Report Bug
·
Request Feature


# Project Status
Last Release Build : [![CircleCI](https://circleci.com/gh/argon1025/TILog-server/tree/release.svg?style=svg)](https://circleci.com/gh/argon1025/TILog-server/tree/release)
![image](https://user-images.githubusercontent.com/55491354/149620300-636ddac5-e957-4bc3-8c92-543237946cd5.png)

# Team
![image](https://user-images.githubusercontent.com/55491354/146319436-555170dd-5e59-4484-a049-6e80dc8f2713.png)
- 프로젝트 관리
- [Dockerize](https://github.com/argon1025/TILog-server/blob/main/docker-compose.yml)
- [데이터 베이스 설계](https://github.com/argon1025/TILog-server/blob/main/docker/mysql/mysql-init-files/init.sql)
- [에러처리](https://github.com/argon1025/TILog-server/tree/main/src/src/ExceptionFilters)
- [포스트 서비스](https://github.com/argon1025/TILog-server/tree/main/src/src/posts)
- [S3 파일 업로드](https://github.com/argon1025/TILog-server/blob/main/src/src/file-uploads/file-uploads.service.ts)
- [작업 큐 서비스](https://github.com/argon1025/TILog-server/tree/main/src/src/task-manager)
- [Redis 캐시 서비스](https://github.com/argon1025/TILog-server/tree/main/src/src/cache-manager)
- [CircleCI 지속적 배포](https://github.com/argon1025/TILog-server/blob/main/.circleci/config.yml)

![image](https://user-images.githubusercontent.com/55491354/146319449-2636ea9e-4166-454d-8d71-60f8d90b9895.png)
- [Comments 서비스](https://github.com/argon1025/TILog-server/tree/main/src/src/comments)
- [Users 서비스](https://github.com/argon1025/TILog-server/tree/main/src/src/users)
- [Passport를 사용한 인증](https://github.com/argon1025/TILog-server/tree/main/src/src/auth)
- [UserBlogCustomization 서비스](https://github.com/argon1025/TILog-server/tree/main/src/src/user-blog-customization)

![image](https://user-images.githubusercontent.com/55491354/146319456-6dd8503d-9167-484f-ae1c-56ce4feee377.png)
- 게시글 태그
- 태그 검색

# Built With
- NestJS
- TypeScript
- MySQL
- typeORM
- Redis

### ERD Diagram
erd

# Getting Started

## 1. Clone this Project
```
git clone https://github.com/argon1025/TILog-server.git
```

## 2. Move Project folder and Install npm module
```
cd TILog-server
npm install
```

## 3. Create environment file
```
// vi .env
// vi .end.dev

# Server Settings
SERVER_PORT=3000
SERVER_HOST=localhost

# CORS Settings
CORS_METHOD=GET,HEAD,PUT,PATCH,POST,DELETE,OPTIONS
CORS_ORIGIN=true
CORS_CREDENTIALS=true

# Database Settings
DB_PASSWORD=
DB_DATABASE=TILog
DB_USERNAME=TILog
DB_HOST=
DB_PORT=3306

# Redis storage Settings
REDIS_HOST=redis://localhost
REDIS_PORT=6379

# Passport Settings
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
GITHUB_CALLBACK_URL=

# Session Settings
SESSION_SECRET=
SESSION_RESAVE=
SESSION_SAVEUNINITIALIZED=
## 24H
SESSION_COOKIE_MAXAGE=86400000

# Front Server Setting
REDIRECT_FRONT=http://localhost:8080/login

# S3 fileUpload settings
AWS_S3_BUCKET=
AWS_S3_ACCESS_KEY=
AWS_S3_KEY_SECRET=
MAXIMUM_IMAGE_FILE_SIZE_BYTES=10000000

# Post cursor Settings
POSTS_GET_CONTENT_LIMIT=30

# Throttle Settings
THROTTLE_TTL=60
THROTTLE_LIMIT=10

# Alert WebHook
ERROR_SLACK_WEBHOOK_URL=https://hooks.slack.com/

# Sentry
SENTRY_DNS=https://[email protected]

```

## 4.Using Docker-compose to Run the Storage.
```
docker-compose up --build
```
> Please Change the environment variable(Database password) in docker-compose.yml

## 5.Start serverApp
```
cd src
npm run start:dev
```
> Please Change the environment variable(.env.dev)