Project: Static Site #3

Static site dengan agenda baru

Tahun ini aku mau mendalami structured content mulai dari struktur data lalu manajemen nya. Seorang temanku mengajakku ngobrol di Minggu pagi, waktu sarapan di depan kost, kita bercerita lalu berkesimpulan, "saat kau berjuang dan terus berjuang tapi ga ketemu apa yang kau inginkan, nanti manfaatnya kamu rasakan kalau sudah menerima ujian." Mulai saat itu aku coba ga terpaku dengan hasil, aku ingin menikmati proses, aku ingin bahagia dengan caraku meskipun hasil belum berarti apa-apa. Tahun ini aku awali dengan belajar mengagendakan proyek semu. Begini garis besarnya:


---
type: post
tag: projects static
date: 20 September 2021
---

# Blog and its backend system

We would like to make a blog with its content management system that easy to use in any operating system. Our client wants some content management interface either desktop apps or dashboard page to handle that but the backend and frontend must be separate to easier maintenance.

## Requirement

- Frontend with dark theme
- Stack based on any template with robust delivery (static or dynamic)
- JSON/RESTful API for dynamic content management
- Support Markdown for static content
- Backend should support for another content types (img, pdf, link preview)
- Carousel on homepage and some description, date published, about, profile along with blog excerpt
- Blog leads to several standard page including but not limited to (about, contact, privacy, terms, help)

## Due date

- 20 January - soft launch
- 30 January - production ready and QA
- 31 January - fixing and public launch (if possible) 

Baiklah, langkah pertama clone atau bikin project baru, aku memilih clone template project dari koleksiku di github lalu hapus kode spesifik dari mesin: get-childitem -path './*' -Recurse -Filter ".DS_Store" | remove-item -Force -Recurse. Lalu usahakan mencari beberapa solusi alternatif dari Wordpress. Sebenarnya Wordpress bisa decoupled dan dibuat cdn dengan wp2static atau dengan third party hosting semacam shifter. Sedangkan untuk backend perlu meninjau ulang apakah database memang diperlukan. Kemungkinan kandidat alternatifnya adalah hugo dengan hokus untuk manajemen konten. Namun, kita perlu repository untuk menyimpan semua konten yang akan deploy ke cdn. Meskipun banyak static site generator yang akan mempermudah pengembangan jika content editor dibuat dashboard page, atau bahkan ga perlu aplikasi semacam hokus jika content writer bisa menggunakan web based git interface daripada menggunakan database. Aku akan mencoba riset frontend dengan svelte dan mengembangkan backend dari awal terlebih dahulu dahulu.