자바스크립트와 Vercel을 사용한 소셜 미디어 기반의 애플리케이션 개발하기

social-media

이번 포스트에서는 자바스크립트와 Vercel을 활용하여 소셜 미디어 기반의 애플리케이션을 개발하는 방법에 대해 알아보겠습니다. 소셜 미디어는 현대 사회에서 매우 인기 있는 플랫폼이며, 많은 사용자들이 다양한 컨텐츠를 공유하고 상호작용을 할 수 있습니다. 이러한 소셜 미디어의 특징을 활용하여 간단한 애플리케이션을 개발해보도록 하겠습니다.

개발 준비하기

먼저, 개발에 필요한 도구를 설치해야 합니다. 본 예제에서는 다음과 같은 도구를 사용할 것입니다:

  1. Node.js
  2. Vercel CLI

Node.js를 설치하기 위해서는 공식 웹사이트에서 다운로드하여 설치하면 됩니다. 설치가 완료되면, Vercel CLI를 설치하기 위해 터미널을 열고 다음 명령을 실행합니다:

npm install -g vercel

프로젝트 설정하기

  1. 먼저, 터미널에서 새로운 디렉토리를 생성하고 해당 디렉토리로 이동합니다.
mkdir social-media-app
cd social-media-app
  1. 다음으로, package.json 파일을 생성하여 프로젝트에 필요한 의존성을 관리합니다.
npm init -y
  1. 이제 필요한 모듈들을 설치합니다. 우리의 애플리케이션은 Express와 MongoDB를 사용할 것이므로, 다음 명령을 실행하여 해당 모듈들을 설치합니다.
npm install express mongoose

애플리케이션 개발하기

  1. 가장 먼저, Express 서버를 생성하고 기본 경로에 “Hello, World!”를 출력하는 간단한 애플리케이션을 만들어보겠습니다. index.js 파일을 생성하고 다음 코드를 입력합니다:
const express = require('express');

const app = express();

app.get('/', (req, res) => {
  res.send('Hello, World!');
});

app.listen(3000, () => {
  console.log('Server is running on port 3000');
});
  1. 이제 MongoDB에 접속하여 사용자 정보를 저장하고 불러오는 기능을 추가해보겠습니다. db.js 파일을 생성하고 다음 코드를 입력합니다:
const mongoose = require('mongoose');

mongoose.connect('mongodb://localhost/social-media-app', {
  useNewUrlParser: true,
  useUnifiedTopology: true
})
  .then(() => {
    console.log('Connected to MongoDB');
  })
  .catch((err) => {
    console.error('Failed to connect to MongoDB', err);
  });

const userSchema = new mongoose.Schema({
  name: String,
  email: String
});

const User = mongoose.model('User', userSchema);

module.exports = User;
  1. 마지막으로, Express 애플리케이션에 MongoDB와의 연결을 추가하고 사용자 정보를 생성하고 불러오는 API를 만들어보겠습니다. users.js 파일을 생성하고 다음 코드를 입력합니다:
const express = require('express');
const User = require('./db');

const router = express.Router();

router.get('/', async (req, res) => {
  try {
    const users = await User.find();
    res.json(users);
  } catch (err) {
    res.status(500).json({ message: err.message });
  }
});

router.post('/', async (req, res) => {
  const user = new User({
    name: req.body.name,
    email: req.body.email
  });

  try {
    const newUser = await user.save();
    res.status(201).json(newUser);
  } catch (err) {
    res.status(400).json({ message: err.message });
  }
});

module.exports = router;
  1. 이제 Express 애플리케이션에 위에서 작성한 API 라우터를 등록합니다. index.js 파일을 다음과 같이 수정합니다:
const express = require('express');
const mongoose = require('mongoose');
const usersRouter = require('./users');

const app = express();

app.use(express.json());

app.use('/users', usersRouter);

app.get('/', (req, res) => {
  res.send('Hello, World!');
});

app.listen(3000, () => {
  console.log('Server is running on port 3000');
});

배포하기

이제 Vercel을 사용하여 애플리케이션을 배포해보겠습니다. 터미널에서 다음 명령을 실행하여 Vercel 배포를 위한 설정을 수행합니다:

vercel login
vercel init

위의 명령을 실행하면 Vercel CLI가 동작하면서 사용자 인증 정보를 입력하고 프로젝트 설정을 진행합니다. 설정이 완료되면, 애플리케이션을 배포하기 위해 다음 명령을 실행합니다:

vercel

Vercel은 자동으로 애플리케이션을 빌드하고 배포합니다. 배포가 완료되면, Vercel에서 생성된 URL을 통해 애플리케이션에 접속할 수 있습니다.

결론

이번 포스트에서는 자바스크립트와 Vercel을 활용하여 소셜 미디어 기반의 애플리케이션을 개발하는 방법을 알아보았습니다. 개발을 위한 준비뿐만 아니라 Express와 MongoDB를 사용하여 간단한 애플리케이션을 만드는 방법과 Vercel을 사용하여 애플리케이션을 배포하는 방법까지 알아보았습니다.

이러한 소셜 미디어 기반의 애플리케이션은 사용자들이 다양한 컨텐츠를 공유하고 상호작용을 할 수 있는 플랫폼으로 많은 사람들에게 인기가 있습니다. 자바스크립트와 Vercel을 사용하여 이러한 애플리케이션을 개발하고 배포할 수 있다는 것은 개발자로서 큰 장점이 될 것입니다.

참고 자료: