Skip to content

2nd Winner INFINITERA1.0 - Velora adalah platform digital komprehensif yang dirancang khusus untuk mendampingi perjalanan kehamilan ibu hamil di Indonesia.

Notifications You must be signed in to change notification settings

Hidayattt24/FE-Velora

Repository files navigation

Velora Logo

🌸 Velora

Platform Terlengkap untuk Dokumentasi, Kesehatan, Dukungan, & Perhatian Ibu Hamil

Vercel Next.js TypeScript Tailwind CSS

πŸš€ Live Demo β€’ πŸ“± Mobile Preview β€’ πŸ“– Documentation


πŸ’ Tentang Velora

Velora adalah platform digital komprehensif yang dirancang khusus untuk mendampingi perjalanan kehamilan ibu hamil di Indonesia. Dengan kombinasi teknologi modern dan pendekatan yang berpusat pada pengguna, Velora menyediakan solusi terintegrasi untuk dokumentasi, monitoring kesehatan, dan dukungan emosional selama masa kehamilan.

🎯 Visi & Misi

Visi: Menjadi sahabat digital terpercaya untuk setiap ibu hamil dalam menjalani perjalanan kehamilan yang lebih bermakna.

Misi:

  • πŸ“Έ Menyediakan platform dokumentasi visual perjalanan kehamilan
  • πŸ₯ Memberikan tools monitoring kesehatan yang mudah dan akurat
  • πŸ“š Menyajikan konten edukatif berbasis riset medis terpercaya
  • πŸ€– Menghadirkan sistem prediksi risiko kesehatan dengan AI
  • πŸ’š Membangun komunitas dukungan untuk kesehatan mental ibu hamil

✨ Fitur Unggulan

πŸ“Έ Galeri Kehamilan

  • Upload foto & video ke cloud storage
  • Organisasi berdasarkan trimester & minggu
  • Sharing dengan keluarga & dokter
  • Backup otomatis & sinkronisasi

πŸ“… Timeline Interaktif

  • Tracking perkembangan minggu ke minggu
  • Milestone kehamilan visual
  • Jadwal pemeriksaan & reminder
  • Progress tracking komprehensif

πŸ₯ Diagnosa AI (84.21% Akurasi)

  • Prediksi risiko kesehatan realtime
  • Input data vital signs
  • Laporan PDF downloadable
  • Rekomendasi tindak lanjut medis

πŸ“– Jurnal Digital

  • Koleksi 50+ artikel medis terpercaya
  • Kategorisasi berdasarkan trimester
  • Bookmark & reading tracker
  • Tips dari ahli kebidanan

πŸ‘€ Manajemen Profil

  • Upload foto profil ke Supabase Storage
  • Edit informasi personal & medis
  • Keamanan data tingkat enterprise
  • Dashboard overview lengkap

πŸ”’ Keamanan & Privacy

  • Enkripsi end-to-end
  • Compliance GDPR
  • Backup multi-region
  • Authentication berlapis

πŸ› οΈ Tech Stack

Frontend

Framework     : Next.js 14 (App Router)
Language      : TypeScript
Styling       : Tailwind CSS + Custom Components
UI Library    : Aceternity UI, Tabler Icons
Animation     : Framer Motion
State Mgmt    : React Context API
Authentication: Custom JWT + Context

Backend

Runtime       : Node.js + Express.js
Database      : Supabase (PostgreSQL)
Storage       : Supabase Storage
AI/ML         : Python ML Model (84.21% accuracy)
File Upload   : Multer + Sharp (image processing)
Deployment    : Vercel (Serverless)

Infrastructure

Frontend Host : Vercel
Backend Host  : Vercel (Serverless Functions)
Database      : Supabase Cloud
Storage       : Supabase Storage
CDN           : Vercel Edge Network
Monitoring    : Vercel Analytics

πŸš€ Quick Start

Prerequisites

Node.js 18.0.0+
npm 9.0.0+
Git

Installation

  1. Clone Repository
git clone https://github.com/Hidayattt24/fe-velora.git
cd fe-velora
  1. Install Dependencies
npm install
  1. Environment Setup
cp .env.example .env.local
  1. Configure Environment Variables
# Velora Frontend Environment Variables

# API Configuration
NEXT_PUBLIC_API_URL=https://api-velora.vercel.app

# ML API Configuration
NEXT_PUBLIC_ML_API_URL=https://dayattttt2444-maternal-health-risk.hf.space

# Development settings
NEXT_PUBLIC_ENV=development
  1. Run Development Server
npm run dev
  1. Open Application
http://localhost:3000

πŸ“ Project Structure

fe-velora/
β”œβ”€β”€ πŸ“‚ src/
β”‚   β”œβ”€β”€ πŸ“‚ app/                    # Next.js App Router
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ auth/              # Authentication pages
β”‚   β”‚   β”‚   β”œβ”€β”€ login/            # Login page
β”‚   β”‚   β”‚   └── register/         # Registration page
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ main/              # Protected main application
β”‚   β”‚   β”‚   β”œβ”€β”€ diagnosa/         # AI Diagnosis module
β”‚   β”‚   β”‚   β”œβ”€β”€ gallery/          # Photo gallery & upload
β”‚   β”‚   β”‚   β”œβ”€β”€ journal/          # Articles & reading
β”‚   β”‚   β”‚   β”œβ”€β”€ profile/          # User profile management
β”‚   β”‚   β”‚   └── timeline/         # Pregnancy timeline
β”‚   β”‚   β”œβ”€β”€ globals.css           # Global styles
β”‚   β”‚   β”œβ”€β”€ layout.tsx            # Root layout
β”‚   β”‚   └── page.tsx              # Landing page
β”‚   β”œβ”€β”€ πŸ“‚ components/            # Reusable components
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ auth/              # Auth-related components
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ sections/          # Landing page sections
β”‚   β”‚   β”œβ”€β”€ πŸ“‚ ui/                # UI components
β”‚   β”‚   β”œβ”€β”€ MainNav.tsx           # Main navigation
β”‚   β”‚   β”œβ”€β”€ Navbar.tsx            # Landing navbar
β”‚   β”‚   └── SplashScreen.tsx      # Loading screen
β”‚   └── πŸ“‚ lib/                   # Utilities & configurations
β”‚       β”œβ”€β”€ πŸ“‚ api/               # API service functions
β”‚       β”œβ”€β”€ πŸ“‚ contexts/          # React contexts
β”‚       β”œβ”€β”€ πŸ“‚ data/              # Static data & constants
β”‚       β”œβ”€β”€ πŸ“‚ hooks/             # Custom React hooks
β”‚       └── utils.ts              # Utility functions
β”œβ”€β”€ πŸ“‚ public/                    # Static assets
β”‚   β”œβ”€β”€ πŸ“‚ landing/               # Landing page assets
β”‚   β”œβ”€β”€ πŸ“‚ main/                  # Application assets
β”‚   └── favicon.ico
β”œβ”€β”€ πŸ“„ next.config.ts             # Next.js configuration
β”œβ”€β”€ πŸ“„ tailwind.config.ts         # Tailwind CSS config
β”œβ”€β”€ πŸ“„ package.json               # Dependencies
└── πŸ“„ README.md                  # Documentation

🎨 Design System

Color Palette

Primary Pink    : #D291BC    /* Brand primary */
Light Pink      : #FFE3EC    /* Backgrounds & accents */
Text Primary    : #1F2937    /* Main text */
Text Secondary  : #6B7280    /* Supporting text */
Success Green   : #10B981    /* Success states */
Warning Yellow  : #F59E0B    /* Warning states */
Error Red       : #EF4444    /* Error states */

Typography

Font Family     : Inter (System font stack)
Headings        : 600-700 weight
Body Text       : 400-500 weight
Code/Mono       : JetBrains Mono

Responsive Breakpoints

Mobile          : 0px - 640px
Tablet          : 641px - 1024px
Desktop         : 1025px - 1280px
Large Desktop   : 1281px+

πŸ”§ Development Guide

Struktur Komponen

// Example: Komponen dengan TypeScript
interface ComponentProps {
  title: string;
  isLoading?: boolean;
  onSubmit: (data: FormData) => void;
}

export function Component({
  title,
  isLoading = false,
  onSubmit,
}: ComponentProps) {
  // Component logic
}

API Integration

// Example: Service function
export const apiService = {
  async getData(id: string): Promise<ApiResponse<Data>> {
    const response = await fetch(`${API_BASE_URL}/data/${id}`);
    if (!response.ok) throw new Error("Failed to fetch");
    return response.json();
  },
};

State Management

// Example: Context usage
const { user, updateUser, isAuthenticated } = useAuth();

πŸ“± Screenshots

πŸ–ΌοΈ Klik untuk melihat screenshots

Landing Page

Landing Page

Authentication

Login Register

Main Application

Gallery Timeline Diagnosis Journal


πŸš€ Deployment

Vercel Deployment (Recommended)

  1. Connect Repository
# Install Vercel CLI
npm install -g vercel

# Login and deploy
vercel --prod
  1. Environment Variables Set di Vercel Dashboard:
NEXT_PUBLIC_API_URL=https://api-velora.vercel.app
  1. Build Settings
{
  "buildCommand": "npm run build",
  "outputDirectory": ".next",
  "installCommand": "npm install"
}

Manual Deployment

# Build production
npm run build

# Start production server
npm start

πŸ§ͺ Testing

Run Tests

# Unit tests
npm run test

# E2E tests
npm run test:e2e

# Coverage report
npm run test:coverage

Performance Testing

# Lighthouse audit
npm run audit

# Bundle analysis
npm run analyze

πŸ“Š Performance Metrics

Core Web Vitals

  • LCP (Largest Contentful Paint): < 2.5s ⚑
  • FID (First Input Delay): < 100ms ⚑
  • CLS (Cumulative Layout Shift): < 0.1 ⚑

Bundle Size

  • First Load JS: 102 kB (Excellent)
  • Page Components: ~50-80 kB average
  • Images: WebP/AVIF optimized

Lighthouse Score

  • Performance: 95+ 🟒
  • Accessibility: 100 🟒
  • Best Practices: 100 🟒
  • SEO: 100 🟒

🀝 Contributing

Kami menyambut kontribusi dari komunitas! Ikuti langkah berikut:

Getting Started

  1. Fork repository
  2. Create feature branch (git checkout -b feature/AmazingFeature)
  3. Commit changes (git commit -m 'Add some AmazingFeature')
  4. Push to branch (git push origin feature/AmazingFeature)
  5. Open Pull Request

Coding Standards

  • βœ… TypeScript strict mode
  • βœ… ESLint + Prettier
  • βœ… Conventional Commits
  • βœ… Component documentation
  • βœ… Test coverage > 80%

Pull Request Guidelines

  • Deskripsi lengkap perubahan
  • Screenshots untuk UI changes
  • Test results
  • Performance impact assessment

πŸ‘₯ Tim Pengembang

Hidayat Nur Hakim
Hidayat Nur Hakim
@Hidayattt24
UI/UX Designer, Frontend Developer, Backend Developer
Tiara Agustin
Tiara Agustin
@tiaraagustinn
Creative Copywriter, Content Strategist, Proposal Writer

Kontribusi Tim

🎨 Hidayat Nur Hakim - Tech Lead & Full-Stack Developer

  • 🎨 UI/UX Design & Prototyping
  • βš›οΈ Frontend Development (Next.js + TypeScript)
  • πŸ”§ Backend Development (Node.js + Express)
  • πŸ—„οΈ Database Design & API Architecture
  • πŸš€ DevOps & Deployment Strategy

✍️ Tiara Agustin - Content Strategist & Creative Lead

  • ✨ Creative Copywriting & Brand Voice
  • πŸ’‘ Product Ideation & User Research
  • πŸ“ Content Strategy & Article Writing
  • πŸ“‹ Business Proposal & Documentation
  • 🎯 User Experience Content Design

πŸ“ Lisensi

Project ini dilisensikan di bawah MIT License.

MIT License

Copyright (c) 2024 Velora Team

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

πŸ“ž Support & Contact

Support Channels

Business Inquiries


πŸ™ Acknowledgments

Open Source Dependencies

Design Inspiration

Medical Content Sources

  • Ikatan Bidan Indonesia (IBI)
  • Perkumpulan Obstetri dan Ginekologi Indonesia (POGI)
  • World Health Organization (WHO)
  • American College of Obstetricians and Gynecologists (ACOG)

Dibuat dengan πŸ’ untuk ibu hamil Indonesia

⭐ Star Repository β€’ πŸ› Report Bug β€’ πŸ’‘ Request Feature

Β© 2025 Velora Team. All rights reserved.

About

2nd Winner INFINITERA1.0 - Velora adalah platform digital komprehensif yang dirancang khusus untuk mendampingi perjalanan kehamilan ibu hamil di Indonesia.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages