Skip to content

stefkwan/fancy-todo-1

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

#Fancy Todo

API documentation (via postman) https://documenter.getpostman.com/view/6691212/S1Zw9BS2

environment variables:

  • JWT_SECRET
  • GOOGLE_CLIENT_ID
  • FB_CLIENT_ID=857945794540372
  • VOICE_API

kendala saat mengerjakan: Saat membuat client progress sangat lambat. Banyak waktu dipakai untuk membaca dokumentasi jQuery, mencari contoh code untuk memilih dan mengubah DOM di html, dan mencoba-coba code yang ditemukan hingga client berjalan sesuai rencana.

Selain itu, saat membuat 3rd party api feature image uploading, menemukan kendala FormData() tidak memberikan return value setelah di append dengan file object. Setelah mencoba banyak cara lain seperti dari object, array, dan fetch, masih tidak menemukan kenapa body tidak bisa menerima kiriman file dari client ke server. Rencana untuk mengubah file ke uri dan di upload via 3rd party api cloudinary tidak jadi.


#Readme Aplikasi Todo menggunakan Client-server model dengan spesifikasi sebagai berikut:

  • API Documentation yang meliputi : URLs, HTTP method, request, response (success dan error case)
  • Membuat routes sesuai standar REST API
  • CRUD endpoints untuk Todo (name, description, status, due date)
  • Register
  • Login menggunakan email & password (menggunakan JWT)
  • Sign in with 3rd APIs (Google/Twitter/Facebook/GitHub)
  • Validasi sehingga hanya authenticated user (owner) yang bisa melakukan CRUD Todo, baik dari sisi client maupun server
  • Membuat authorization sehingga user hanya bisa melakukan Update/Delete terhadap todo-nya sendiri (server)
  • NO alert();! (Client)
  • Make it fancy! Tambahkan 1 fitur atau lebih yang akan menjadikan aplikasi todo kamu menjadi unik dan berbeda. Misal, integrasikan dengan Google Calendar. (Ingat, tambahkan fitur seunik mungkin)

#Extras:

  • Authenticated user bisa membuat project, dan invite/add member ke project tersebut.
  • User dapat membuat todo di project yang sudah dipilih
  • Todo yang ada di suatu project hanya bisa di read/write (CRUD) oleh project members.

Kompetensi Backend:

  • REST API

  • API Documentation

  • API CRUD Todo + Authentication

  • MongoDB + Mongoose

Kompetensi Client:

  • jQuery + AJAX

  • SPA (Single Page Application)

Tambahkan comment yang berisi environment variables yang dipakai (beserta valuenya), link deploy (jika ada), fitur uniknya dan kendala saat mengerjakan.

About

fancy-todo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 73.9%
  • HTML 14.8%
  • CSS 11.3%