Skip to content
This repository was archived by the owner on Nov 6, 2025. It is now read-only.

AlexBMJ/minitwit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minitwit

version upstatus codecov GitHub branch checks state GitHub pull requests GitHub

https://nextjs.org/ https://www.typescriptlang.org/

An application created for the 'DevOps, Software Evolution and Software Maintenance' course at ITU in Copenhagen. This application was refactored from the original minitwit project written in Python using flask.

Since then, it's been refactored to use TypeScript using modern DevOps features and practices:

  • Continuous integration using GitHub Actions, with automatic unit testing, static analysis and coverage reporting.
  • Continuous delivery through GitHub releases.
  • Containerized using Docker.
  • Logging support using Pino, ElasticSearch and Kibana.
  • Performance monitoring using Promethus which is integrated through Grafana.

Contribting

For contributing, please read the CONTRIBUTING.md guide.

Continuous Deployment

A new docker image is built when a new release is published using Github Actions and the docker stack is managed by shepherd which checks for new docker versions every five minutes.

Setup

  1. Create the following .env file in the main directory:
MONGO_INITDB_ROOT_USERNAME=dbuser
MONGO_INITDB_ROOT_PASSWORD=changeme
MONGO_INITDB_DATABASE=minitwit
CONNECTION_STRING=mongodb://changeme:changeme@db:27017/minitwit?authSource=admin
TOKEN_SECRET=changeme
KIBANA_SYSTEM_PASSWORD=changeme
ELASTIC_PASSWORD=changeme
LOGSTASH_INTERNAL_PASSWORD=changeme
ELASTICSEARCH_PASSWORD=changeme
KIBANA_PASSWORD=changeme

Deployment

sudo docker swarm init
sudo docker stack deploy -c deployment.yml minitwit

with deployment.yml

Maintainers

  • Alexander Bastian Magno Jacobsen
  • Anton Marius Nielsen
  • Deniz Isik
  • Deniz Yildirim
  • Mikkel Lindgreen Bech

About

DevOps 2022

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors 6