Skip to content

create/read/update/delete tasks with JWT auth user login, REST api

Notifications You must be signed in to change notification settings

tahatsahin/taskmanager

Repository files navigation

Task Manager App with Go

  • This is a CRUD practice project in Go.

  • Used technologies: Go, JWT, HTTP-Negroni-DotEnv-Gorilla-Crypto Packages, MongoDB

  • Endpoints:

    • /users: DELETE - Delete registered user
    • /users/register: POST - Register user
    • /users/login: POST - Login with registered user credentials
    • /tasks: GET - Get all created tasks, note that all /tasks endpoints are restricted for unknown users.
    • /tasks: POST - Create a new task
    • /tasks/{id}: GET - Get a specific task by given id
    • /tasks/{id}: PUT - Update a specific task by given id
    • /tasks/{id}: DELETE - Delete task by given id
  • Gorilla Mux is used for routing

  • Negroni is used for chaining routes

  • JWT is used for authorizing users

  • Standart HTTP package is used for creating servers and handling routes

  • Crypto package is used to generate and read private and public RSA

To be able to run the program, clone the repo by using

git clone https://github.com/tahatsahin/taskmanager.git

After cloning, go to the directory that the project is cloned and run the below command.

go install

This command will install the necessary dependencies on your machine. After completing installation, go to the directory

{InstallationDirectory}/taskmanager/common

and create a file named .env by using the given info in sample.env file.

After saving .env file, you can start the program by using

go run main.go

Feel free to contact me at: tahatsahin@gmail.com

About

create/read/update/delete tasks with JWT auth user login, REST api

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages