Skip to content

MustafaSmesem/todolist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Todolist

Todolist WebAPP version demo

react springboot rabbitmq mongodb docker

Overview

Free and open source todo task manager app.

Register new user

Register.mp4

Manage groups

group.managment.mp4

Manage tasks

tasks.managment.mp4

Login as Admin

in the first initialize of the project it adds two user admin@domain.test,user@domain.test with password 1234.

admin.login.mov

here we just simulate the admin authorization the admin page is not completed


installation

For Local Installation

Prerequisites

Environment requests

  • nodejs v14.15.0
  • JDK 16 + maven
  • git
  • mongodb 4.0 +
  • rabbitmq

Clone the repository

git clone https://github.com/MustafaSmesem/todolist.git

Backend build

From ./todolist-spring file execute:

mvn dependency:go-offline 

This will install all the dependencies then:

mvn package

This will create the *.jar file inside target folder which you can start as follows:

java -jar target/*.jar

This will start the backend with development profile on http://localhost:9090, and it expects that mongodb is run on port 27017 and has no authentication methods. also, it expects that rabbitmq is running on port 5672 and with username & password as "guest", you can change these properties from application.yml file dev profile section:

  data:
    mongodb:
      database: todolist

  rabbitmq:
    port: 5672
    username: guest
    password: guest

Also you can see full api documentation in http://localhost:9090/swagger-ui.html

Frontend build

First from ./tosolist-react file we need to install node dependencies as:

npm install

After install the dependencies for test and development purpose you can just run:

npm start

The development server will start on port 3000 and you can test the app from http://localhost:3000

for deploying the app after installing the dependencies you need to build it:

npm run build

then in case of NGINX cop the compiled files from build file to /usr/share/nginx/html.

Docker Build

You need both docker engine and docker compose.

Note: if you on Mac/Windows you got the both with installing Docker Desktop

Now from the base directory just build the images with composer

    docker-compose build

and run it

    docker-compose up

And that's it 😃. you can now go to http://localhost and start manage your tasks.


Todo

  • complete admin user page
  • complete notification mechanism
  • add settings page
  • Increase the responsivity of the web design especially in the mobile screen size



Authors

About

Todolist webapp

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages