Skip to content

Instantly share code, notes, and snippets.

View agung83's full-sized avatar

Agung Laksmana agung83

  • padang, Sumatera Barat, Indonesia
View GitHub Profile
@agung83
agung83 / gist:4db5ebf83d1eb3931b8353e45968f771
Created November 13, 2025 15:09
flutter bottomNav with route go route
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
class MainBottomNav extends StatefulWidget {
final Widget child;
const MainBottomNav({super.key, required this.child});
@override
State<MainBottomNav> createState() => _MainBottomNavState();
}
@agung83
agung83 / Dockerfile php-fpm alpine for prod not use supervisor only php-fpm expose port default 9000
Created January 2, 2024 17:29
Dockerfile php-fpm alpine for prod not use supervisor only php-fpm expose port default 9000
FROM node:18.18.2-alpine as node
FROM php:8.2-fpm-alpine as build-stage
COPY deploy/php/php.ini /usr/local/etc/php/php.ini
WORKDIR /var/www/
RUN apk --no-cache add \
@agung83
agung83 / Dockerfile php-fpm debian for production
Last active January 2, 2024 17:46
Dockerfile Laravel For php-fpm none alpine atau mengunakan os debian
FROM php:8.2-fpm as build-stage
# Use the default production configuration
# RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
COPY deploy/php/php.ini /usr/local/etc/php/php.ini
COPY deploy/php/php-fpm.conf /usr/local/etc/php-fpm.conf
WORKDIR /var/www/
RUN apt-get update && apt-get install -y \
@agung83
agung83 / rest.js
Created August 29, 2022 02:17
example integrated oop rest api
import { ToastAndroid } from 'react-native';
import VersionCheck from 'react-native-version-check';
import { createLogger } from '@common/logger';
import { EventEmitter } from '@common/events';
import { isObject } from '@common/utils';
import { AuthService } from '../../modules/auth/rx/service';
import { store } from '../../app';
const events = new EventEmitter();
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="icon" href="https://ppdb.sumbarprov.go.id/sumbar.ico">
<title>PENDAFTARAN PPDB SUMBAR</title>
<script src="https://unpkg.com/@lottiefiles/lottie-player@latest/dist/lottie-player.js"></script>
@extends('biodata.app')
@section('content-biodata-siswa')
<div class="md:container lg:container" x-data="masukan initial alpine">
<div class="flex justify-center">
<div class="space-y-7 w-full">
<div class="space-y-2">
<h1 class="text-2xl font-bold text-primary-black">Isi Data Nilai</h1>
<p class="text-md text-gray-500">Silahkan lengkapi data nilai per semester berikut, jika ada keraguan pada nilai silahkan bandingkan nilai dengan rapor yang telah di upload dengan cara menekan <span class="text-orange-500">Lihat Rapor Semester yang berada disebelah kanan atas pada formulir per semester</span>!</p>
</div>
@agung83
agung83 / gist:59cd304c40d467c22cbea80ae5b82490
Created February 10, 2022 03:36
Fungsi Upload File Dengan Formdata dan compress lebar gambar
const pickImage = async () => {
// No permissions request is necessary for launching the image library
let result = await ImagePicker.launchImageLibraryAsync({
mediaTypes: ImagePicker.MediaTypeOptions.All,
allowsEditing: true,
aspect: [4, 3],
quality: 1,
});
let compressResult = await ImageManipulator.manipulateAsync(result.uri, [{ resize: { width: 540, height: 380 } }],
@agung83
agung83 / gist:d4bbe382f05dac3baae57fa6f37e252a
Created December 1, 2021 15:47
Example Knex js Dynamic query
let query = knexInstance<Dokumen>('ms_dokumen')
query.select('*')
query.where((builder) => {
if (no === 4) {
builder.where('id_dokumen', 14)
}
})
query.first()
// referensi https://stackoverflow.com/questions/41887460/select-list-is-not-in-group-by-clause-and-contains-nonaggregated-column-inc/41887524
//masukan query di bawah ini ke sql query
SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
//set untuk selamanya di phpmyadmin
https://stackoverflow.com/questions/23921117/disable-only-full-group-by
@agung83
agung83 / Set up Server API express dan frontend vue atau react
Created May 23, 2021 16:35
Set up Server API express dan frontend vue/react
const express = require('express')
const app = express()
const port = 3000
const staticMiddleware = express.static(__dirname + '/public/')
var history = require('connect-history-api-fallback'); // ini berguna untuk menghadle ketika aplication spa vue atau react notfound ketika reload page dari rute lain
app.use(history({
rewrites: [ // ini beguna untuk membuat route api/icon bisa terbacaa sebagai api dari expresss