API for StartedInCroatia [Github - Frontend].
Started in Croatia.
Open-Source.
- TypeScript
- Koa.js
- Database: MongoDB: Mongoose
- Config: Dotenv, Joi
- Testing: Jest: SuperTest, MongoDBMemoryServer
- Docker: MongoDB
- 🥰 Link CRUD
- 🔐 JWT auth for Admin actions
Docker
Runs MongoDB container.
cd docker
cp .env.example .env
docker-compose up -d
Application
# Return to root
cd ..
cp .env.example .env
npm i
npm run dev
Using Jest Testing Framework.
Jest uses SuperTest and MongoDBMemoryServer.
npm run test
Check out Postman Documentation.
Pre-set environment variables:
hostadmin_password
Dynamic environment variables, automatically set in tests:
access_token
Few routes are protected with jwtCheck middleware.
Requests going to these routes require Authorization: Bearer {token} header.
Protected Routes
- [Link][update,delete]
Getting access token
Endpoint: POST /auth/token.
Body: { password: ADMIN_PASSWORD }.
Admin password
ADMIN_PASSWORD is defined in .env file.
It defaults to secret.
Written in TypeScript,
using Vue.js and Vuetify.
Join the open-source development - Github - StartedInCroatia - Frontend.
Check the live version at startedincroatia.com.