Web · Live

Temanala

Tempat curhat dan menulis cerita secara online, bisa anonim, dengan kendali penuh atas siapa yang boleh membaca.

Halaman depan Temanala dengan judul Tulis apa yang selama ini kamu pendam dan tombol Mulai menulis

Nilai jual

Yang membuatnya menonjol.

01

Ruang aman untuk menulis

Penulis bisa anonim dan menentukan sendiri apakah tulisannya dibaca publik, teman dekat, atau tidak dibaca siapa pun.

02

Sudah live dan bisa dicoba sekarang

Temanala terbuka untuk umum. Anda bisa mendaftar, menulis, dan melihat sendiri bagaimana produknya bekerja.

03

Dijalankan seperti produk sungguhan

Cadangan otomatis setiap malam, peringatan saat layanan bermasalah, pembatasan laju, serta alur pelaporan dan moderasi sudah berjalan.

04

Data di bawah kendali sendiri

Basis data dan berkas unggahan berada di server yang dikelola sendiri, bukan di layanan pihak ketiga.

Masalahnya

Banyak orang ingin menuliskan hal yang mereka pendam, tetapi media sosial terlalu ramai dan terlalu terikat pada identitas. Menulis di sana berarti dibaca oleh orang yang tidak dimaksud.

Untuk siapa

Siapa saja yang ingin menulis tentang seseorang, kehilangan, hidup, atau diri sendiri, dan ingin memilih apakah tulisan itu dibaca publik, teman dekat, atau tidak dibaca siapa pun.

Fitur utama

  1. Menulis dengan atau tanpa nama

    Tulisan bisa diterbitkan secara anonim, sehingga isi cerita terpisah dari identitas penulisnya.

  2. Tiga tingkat keterlihatan

    Setiap tulisan bisa dibuat publik, hanya untuk teman dekat, atau pribadi.

  3. Daftar teman dekat

    Penulis menentukan sendiri siapa yang masuk daftar teman dekatnya. Hubungannya satu arah, jadi tidak perlu persetujuan timbal balik.

  4. Interaksi yang tenang

    Suka, bagikan ulang, komentar, dan notifikasi, tanpa algoritma yang mendorong keramaian.

  5. Pelaporan dan moderasi

    Pembaca dapat melaporkan tulisan atau komentar, dan admin meninjaunya di halaman khusus.

  6. Akun yang terverifikasi

    Pendaftaran dengan verifikasi email dan pemulihan kata sandi lewat tautan yang dikirim ke email.

Pendekatan yang sama bisa diadaptasi untuk

  • Platform komunitas dengan konten buatan pengguna
  • Jurnal atau forum internal dengan tingkat privasi
  • Aplikasi sosial dengan pelaporan dan moderasi
Diskusikan kebutuhan serupa

Arsitektur

Temanala terdiri dari dua bagian. Front end adalah aplikasi Next.js yang di-deploy di Vercel. Back end adalah API yang ditulis dengan Hono dan Prisma di atas PostgreSQL, berjalan di VPS dengan Docker Compose di belakang nginx.

Pemisahan ini membuat halaman publik bisa dirender di server dan diindeks mesin pencari, sementara data dan berkas unggahan tetap berada di server yang dikelola sendiri.

Repository juga memuat aplikasi Android berbasis Flutter yang membungkus situsnya. Aplikasi itu belum dirilis di toko aplikasi.

Detail implementasi

Keterlihatan sebagai dua penanda. Publik, teman dekat, dan pribadi disimpan sebagai dua nilai boolean, bukan satu kolom pilihan. Dengan begitu tulisan yang dibuat sebelum fitur teman dekat ada tetap bermakna sama tanpa migrasi data.

Deploy satu perintah. Satu skrip mencadangkan basis data, mengunggah kode, membangun ulang, menerapkan perubahan skema, lalu menyalakan ulang layanan.

Cadangan yang benar-benar keluar dari server. Cadangan malam hari disalin secara terjadwal ke mesin lain, sehingga kehilangan server tidak berarti kehilangan data.

Pembatasan laju di dua tempat. nginx menahan banjir permintaan, dan API mencatat percobaan per tindakan untuk hal seperti login dan pendaftaran.

Header keamanan ketat. Situs mengirim Content Security Policy dan menolak ditampilkan di dalam bingkai situs lain. Karena itu halaman ini menautkan ke aplikasinya, bukan menyematkannya.

Uji asap ujung ke ujung. Sebuah skrip menjalankan API terhadap basis data uji yang kosong untuk memastikan alur utama tetap berjalan sebelum deploy.

Yang bisa diverifikasi

  • Live dan dapat diakses publik di temanala.vercel.app.
  • Basis data dan gambar unggahan dicadangkan setiap malam dan disimpan selama 14 hari.
  • Server mengirim email peringatan ketika API berhenti merespons atau disk hampir penuh.
  • Kode sumbernya privat.

Tangkapan layar

Butuh yang serupa?

Ceritakan apa yang mirip dengan Temanala dan apa yang berbeda di kasus Anda. Anda akan mendapat balasan langsung tentang cakupan dan platform.

Ajukan Proyek